使用R包fBasics计算样本过度峰度

时间:2014-01-31 15:38:20

标签: r statistics

我使用fBasics软件包来计算一个非常简单的向量的样本过度峰度[1,2,3]:

> library(fBasics)
> x=c(1,2,3)
> kurtosis(x)
[1] -2.333333
attr(,"method")
[1] "excess"

我根据WIkipedia http://en.wikipedia.org/wiki/Kurtosis#Sample_kurtosis计算的是-1.5。所以我想知道为什么fBaswics包给出了不同的结果?

谢谢!

1 个答案:

答案 0 :(得分:5)

从包裹中使用kurtosis代替。

> library(moments)
> kurtosis(x)
[1] 1.5
来自妈妈们的{p> kurtosis计算了皮尔逊测量峰度的估计量。实现此函数(如果x是数字向量),如下所示:

n <- length(x)
n * sum((x - mean(x))^4)/(sum((x - mean(x))^2)^2)

为了让你获得过多的峰度使用:

> kurtosis(x)-3
[1] -1.5

现在,为了让您了解kurtosis形式fBasics的不同之处,请查看代码,以便使用:

library(fBasics)
methods("kurtosis")
getAnywhere("kurtosis.default")

如果x是一个数值向量,那么从fBasics(实际上来自timeDate,请参阅我的评论)中的峰度定义了多余的峰度为:

sum((x - mean(x))^4/as.numeric(var(x))^2)/length(x) - 3

我认为这会对你有所帮助。您的评论中的问题是寻找一个基本的统计答案,我刚刚指出了R编程提示,以便您获得作业的答案。