我使用fBasics包来计算一个非常简单的向量的样本过度峰度[1,2,3]:
> library(fBasics)
> x=c(1,2,3)
> kurtosis(x)
[1] -2.333333
attr(,"method")
[1] "excess"
Run Code Online (Sandbox Code Playgroud)
我根据WIkipedia http://en.wikipedia.org/wiki/Kurtosis#Sample_kurtosis计算的是-1.5.所以我想知道为什么fBaswics包给出了不同的结果?
谢谢!
kurtosis改为使用moment包.
> library(moments)
> kurtosis(x)
[1] 1.5
Run Code Online (Sandbox Code Playgroud)
kurtosis来自妈妈们计算皮尔逊测量峰度的估计量.实现此函数(如果x是数字向量),如下所示:
n <- length(x)
n * sum((x - mean(x))^4)/(sum((x - mean(x))^2)^2)
Run Code Online (Sandbox Code Playgroud)
为了让你获得过多的峰度使用:
> kurtosis(x)-3
[1] -1.5
Run Code Online (Sandbox Code Playgroud)
现在,为了让您了解kurtosisfBasics形式的不同之处,请查看代码,以便使用:
library(fBasics)
methods("kurtosis")
getAnywhere("kurtosis.default")
Run Code Online (Sandbox Code Playgroud)
如果x是一个数字向量,那么从fBasics(实际上来自timeDate,请参阅我的评论)中的峰度定义了多余的峰度为:
sum((x - mean(x))^4/as.numeric(var(x))^2)/length(x) - 3
Run Code Online (Sandbox Code Playgroud)
我想这会对你有所帮助.您的评论中的问题是寻找一个基本的统计答案,我刚刚指出了R编程提示,以便您获得作业的答案.
| 归档时间: |
|
| 查看次数: |
5162 次 |
| 最近记录: |