所以我一直在玩Julia,我发现计算概率分布峰度的函数在Julia和MATLAB之间的实现方式不同。
在朱莉娅,做:
using Distributions
dist = Beta(3, 5)
x = rand(dist, 10000)
kurtosis(x) #gives a value approximately around -0.42
在 MATLAB 中执行以下操作:
x = betarnd(3, 5, [1, 10000]);
kurtosis(x) %gives something approximately around 2.60
这是怎么回事?为什么两种语言的峰度不同?
如下所述: http://www.itl.nist.gov/div898/handbook/eda/section3/eda35b.htm
我们经常使用过量峰度(峰度 - 3),使正态分布的(过量)峰度变为零。如 distributions.jl 文档中所示,这是 Julia 中kurtosis(x)
使用的。
Matlab 不使用超额度量(文档中甚至有一个注释提到了这个潜在问题)。