数据的偏度和峰度理解 + log消除 + python

本文介绍了偏度和峰度在数据统计中的意义,偏度反映分布对称性,峰度表示数据分布的尖锐程度。通过Python实验,创建正态分布数据并人为增加偏度和峰度,然后使用自然对数消除异常值,观察统计特性变化。同时指出网上部分计算skewness和kurtosis的Python代码存在的错误,并提供了修正后的正确代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

晚上看神经网络的feature工程看到对偏度数据进行处理,已经忘了。。。查阅了一些资料,顺便写个小程序比较一下,记录下来

关于偏度和峰度的定义不再赘述,有很多文章
简单来说对于数据统计:

  1. 偏度能够反应分布的对称情况,右偏(也叫正偏),在图像上表现为数据右边脱了一个长长的尾巴,这时大多数值分布在左侧,有一小部分值分布在右侧。

  2. 峰度反应的是图像的尖锐程度:峰度越大,表现在图像上面是中心点越尖锐。在相同方差的情况下,中间一大部分的值方差都很小,为了达到和正太分布方差相同的目的,必须有一些值离中心点越远,所以这就是所说的“厚尾”,反应的是异常点增多这一现象。

Python的实验:

a. 先构造一个正态分布的随机100个数
b. 把排序后比较大的20个数*4,造成偏度和峰度都变大的数据
c. 把所有数据都取自然对数,再看偏度和峰度

实验结果:
可以看到b操作增加了右边的尾巴厚度,直接增大了skewness和kurtosis的值,造成了正偏分布,而对所有数取log又把数据的概率密度扁平化了,减小了这两个值

PS:网上流传最多的直接用python计算skewness和kurtosis的代码是有错误的,下面贴了改动后的正确代码,这个例子是直接用pandas自带的函数算的
在这里插入图片描述

实验代码:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值