我想计算分布的第n个矩。我正在尝试在R中使用库'moments'的all.moments函数。我以这种方式测试了all.moments:
library(moments)
r<-rnorm(10000)
rr<-all.moments(r,order.max=4)
rr
[1] 1.000000000 0.002403360 0.962201478 -0.022694670 2.852696159
在我看来,这是不正确的,因为我知道在正态分布中第3和第4矩必须为0。
我的错误在哪里?
最佳答案
第三时刻是偏斜。您是正确的:对于正态分布,该值为零。由于您仅从正态分布中进行采样,因此结果大约为零。
第四阶矩是峰度。对于正态分布,这是3σ^ 4。在这种情况下,σ为1,因此您的结果应为3。
为了提高估计的准确性,请增加样本量。对于1e7观测值的样本:
> library(moments)
> r <- rnorm(1e7)
> all.moments(r,order.max=4)
[1] 1.0000000000 0.0004028138 0.9995373115 0.0007276404 2.9976881271
关于r - all.moments函数怪异的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9828774/