我想声明一个新的概率分布,我需要一个几何分布,我知道在R中已经声明了这种分布,但是我需要形式为p(1-p)^(k- 1),因此平均值为1 / p,k = {1、2,...}。然后,我想使用rgeom等类型的所有功能。
非常感谢您的帮助。
答案 0 :(得分:1)
R中的几何分布定义为p(1-p)^(x)
,即不包括首次成功的试验次数。
要获得包括首次成功在内的所有试验的分布,您只需相应地调整公式即可。
my_rgeom <- function(n, prob) rgeom(n, prob) + 1
my_dgeom <- function(x, prob, log = FALSE) {
p <- dgeom(x, prob) / (1 - prob)
if (isTRUE(log)) log(p) else p
}