5

我的目标是近似二项式变量总和的分布。我使用 Ken Butler 和 Michael Stephens 的以下论文The Distribution of a Sum of a Binomial Random Variables

我想编写一个 R 脚本来找到二项式总和的 Pearson 近似值。有一个 R 包 PearsonDS允许以简单的方式执行此操作。

因此,我从论文中获取第一个示例,并尝试找出这种情况下 Pearson 分布的密度。最后我收到一条错误消息“这些时刻没有概率分布”。

你能解释一下下面的代码有什么问题吗?

library(PearsonDS)

# 定义五个二项式随机变量的参数

n<-rep(5,5)
p<-seq(0.02,0.10,0.02)

# 找到前四个累积量

k.1<-sum(n*p)
k.2<-sum(n*p*(1-p))
k.3<-sum(n*p*(1-p)*(1-2*p))
k.4<-sum(n*p*(1-p)*(1-6*p*(1-p)))

# 求偏度和峰度参数

beta.1<-k.3^2/k.2^3
beta.2<-k.4/k.2^2

# 定义时刻并计算

moments <- c(mean=k.1,variance=k.2,skewness=sqrt(beta.1),kurtosis=beta.2)
dpearson(1:7,moments=moments)

我收到错误消息“这些时刻没有概率分布”。

4

1 回答 1

2

您尝试在瞬间插入的峰度实际上是多余的峰度,即kurtosis - 3. 从帮助页面dpearson()

时刻:
平均值、方差、偏度、峰度(不是过度峰度)的可选向量/列表。

因此,添加 3beta.2将为您提供真正的峰度:

beta.1 <- (k.3^2)/(k.2^3)
beta.2 <- k.4/(k.2^2)
kurt <- beta.2 + 3

moments <- c(mean = k.1, variance = k.2, skewness = beta.1, kurtosis = kurt)
dpearson(1:7, moments=moments)
# [1] 0.3438773545 0.2788412385 0.1295129534 0.0411140817 0.0099279576
# [6] 0.0019551512 0.0003294087

为了得到类似论文中的结果,我们应该研究累积分布函数并添加 0.5 来校正由连续分布逼近离散分布引起的偏差:

ppearson(1:7+0.5, moments = moments)
# [1] 0.5348017 0.8104394 0.9430092 0.9865434 0.9973715 0.9995578 0.9999339

一点背景资料:

该函数引发错误,因为峰度和偏度之间的关系并非无效:峰度以下列方式受偏度的下限:kurtosis >= (skewness)^2 - 1. 证明并不漂亮,当然超出了问题的范围,但是如果您喜欢这个不等式的不同版本,可以查看下面的参考资料。

  1. 威尔金斯,J.欧内斯特。关于偏度和峰度的注释。安。数学。统计学家。15 (1944), 没有。3、333--335。http://projecteuclid.org/euclid.aoms/1177731243
  2. K.皮尔逊。对进化论的数学贡献,XIX;关于偏斜变化的回忆录的第二个补充。菲洛斯。反式。罗伊。社会党。伦敦爵士。A, 216 (1916), p. 432 http://rsta.royalsocietypublishing.org/content/216/538-548/429
  3. 皮尔逊,K.(1929 年)。“对‘频率函数矩和各种统计常数的不等式’的编辑说明”。生物计量学。21(1-4):361-375。关联
于 2017-01-03T17:29:18.267 回答