如何写出定义在r中多个区间上的二元分布的联合PMF



二元分布的定义如果我有下面的联合概率密度函数联合PMF即关节概率质量函数(pmf)由以下pmf和累积分布函数组成

边际分布的R码如下(即DIW分布的pmf)

ddiw<- function(x, t, eta){  # t means theta parameter
stopifnot( eta>0, x>=0)
pmf<-t^(x+1)^(-eta) - t^(x)^(-eta)
return(pmf)
}

其在R中的累积分布函数如下

pdiw<-function(x, t, eta){
stopifnot(  eta > 0)
cdf<- t^(x+1)^(-eta)
return(cdf) 
}

我想把R中的关节pmf写成方程(4)我试着在R中写出方程(4)中的关节pmf,但是我没有成功。同样,我想画出R中的关节pmf,如下图所示三维二元分布图

你能帮我把关节pmf用R表示出来,并画成图示吗?

提前感谢。

编辑

我将联合pmf写得更清楚如下联合pmf

代入DIW的pmf和代入DIW的cdf时的联合pmf

不确定这是否有帮助,但您可以这样编写函数:

joint_pmf <- function(x1, x2, eta) {
stopifnot(
all(x1>0), all(x2>0), 
all(is.finite(x1)), all(is.finite(x2)),
length(x1)==length(x2)
)
# the result vector
n <- length(x1)
pmf <- rep(NA, n) 
# check for the first condition
idx <- which(x1<x2)
pmf[idx] <- NA # here you need to fill in
# check for the second condition
idx <- which(x1>x2)
pmf[idx] <- NA # here you need to fill in
# and so on..
}

这个函数接受x1, x2参数的向量。由于pmf是分段定义的,因此只计算子集的结果。

最新更新