我应用fitdistrplus
包以适应经验分布。
事实证明,最合适的是具有参数的负二项分布:
size=0.6900788
mu=2.6522087
dnbinom(0:10, mu = 2.6522087, size =0.6900788)
[1] 0.33666338 0.18435650 0.12362301 0.08796440 0.06439416 0.04793144 0.03607044 0.02735574 0.02086667 0.01598815 0.01229390
我现在正试图在EXCEL上生成相同的数字,其中参数需要不同的格式:
NEGBINOMDIST(number_f,number_s,probability_s)
我打算怎么做?有任何想法吗? 非常感谢..
答案 0 :(得分:2)
根据Microsoft's documentation,Excel使用标准“n次失败前的绘制次数”定义; fitdistrplus
使用的参数化是?dnbinom
中引用的替代方法:
另一种参数化(通常用于生态学)是由 意味着'mu'和'size',分散参数,其中'prob' ='尺寸/(尺寸+亩)'。方差是'mu + mu ^ 2 / size' 参数化。
因此,如果您想从mu
和size
返回prob
和size
(分别是Excel的probability_s
和number_s
)需要
number_s=size
probability_s=size/(size+mu)
muval <- 2.6522087
sizeval <- 0.6900788
(probval <- sizeval/(sizeval+muval))
## [1] 0.206469
all.equal(dnbinom(0:10,mu=muval,size=sizeval),
dnbinom(0:10,prob=probval,size=sizeval))
## TRUE
但是,你还没有完成,因为(正如@James上面评论的那样)Excel只允许number_s
的正整数,并且上面的估计值是0.69。您可能需要在Excel相关论坛上搜索/询问如何克服此限制...最糟糕的是,由于Excel确实有an implementation of the gamma function,您可以使用?dnbinom
中给出的公式
Gamma(x+n)/(Gamma(n) x!) p^n (1-p)^x
实现自己的NB计算(此公式允许n
的非整数值。最好使用Excel中的GAMMLN
函数来计算对数刻度上归一化常数的分子和分母......如果你很幸运,那里的某个人会为你省去一些麻烦并实现这一点已经......