R语言入门之偏度(skewness)与峰度(kurtosis)

时间:2022-07-22
本文章向大家介绍R语言入门之偏度(skewness)与峰度(kurtosis),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

偏度(Skewness)与 峰度(Kurtosis)

第一部分:偏度(Skewness)

偏度(skewness),是统计数据分布偏斜方向和程度的度量,是统计数据分布非对称程度的数字特征。在定义上,偏度是样本的三阶标准化矩:

偏度定义中包括右偏分布(也叫正偏分布,其偏度>0),正态分布(偏度=0),左偏分布(也叫负偏分布,其偏度<0),如下图所示:

用R语言基本函数可以实现:

d <- c(1,2,3,5) #将a去除NA值
mean(((d-mean(d))/sd(d))^3) #计算偏度,结果和psych包的计算一致,是正偏态分布
[1] 0.2823139
describe.by(d)
e <- rnorm(500) #生成500个标准正态分布的随机数
mean(((e-mean(e))/sd(e))^3)
[1] -0.1323446
describe.by(e)

第二部分:峰度(Kurtosis)

峰度(kurtosis),表征概率密度分布曲线在平均值处峰值高低的特征数。直观看来,峰度反映了峰部的尖度,计算方法为随机变量的四阶中心矩与方差平方的比值。公式上就是把偏度计算公式里的幂次改为4即可。峰度包括正态分布(峰度值=3),厚尾(峰度值>3),瘦尾(峰度值<3)。当然在pshcy包里是将计算出来的峰度减去3后输出,这样便可以直接通过正负来判断峰度了。

R语言基本代码实现如下:

mean(((d-mean(d))/sd(d))^4) 
[1] 1.038214
mean(((d-mean(d))/sd(d))^4)-3 # 将结果减去3,变成和psych计算结果一致
[1] -1.961786
describe.by(d)
mean(((e-mean(e))/sd(e))^4)-3 # 将结果减去3,变成和psych计算结果一致
[1] 0.05919889
describe.by(e)

这一期的内容就分享到这里了,如果对偏度和峰度仍有不理解的朋友欢迎在后台留言!