弗里德曼-迪亚科尼斯规则,偏度,峰度
弗里德曼-迪亚科尼斯规则
在统计学中,Freedman-Diaconis规则用于确定直方图中的条柱宽度, 它以David A.Freedman和Persi Diaconis的名字命名。该规则定义:
\[条柱宽度 = 2 \times \frac{IQR}{\sqrt[3]{n}}
\]
其中,IQR是四分位距,n是观测样本数目。
偏度(Skewness)
偏度用来度量随机变量概率分布的不对称性。
\[b1=\frac{m_3}{s^3}=\frac{\frac{1}{n} \sum_{i=1}^{n}(x- \mu)^3}{[\frac{1}{n-1} \sum_{i=1}^{n}(x- \mu)^2]^{3/2}}
\]
\[g1=\frac{m_3}{m_2^{3/2}}=\frac{\frac{1}{n} \sum_{i=1}^{n}(x- \mu)^3}{[\frac{1}{n} \sum_{i=1}^{n}(x- \mu)^2]^{3/2}}
\]
其中,\(\mu\)是样本均值,\(s\)是样本标准差,\(m_2\)是(偏置)样本的第二中心矩,\(m_3\)是样本的第三中心矩。
样本偏度的另外一个定义是:
\[G = \frac{k_3}{k_2^{3/2}} = \frac{n^2}{(n-1)(n-2)}b_1=\frac{\sqrt{n(n-1)}}{n-2}g_1
\]
偏度是一种统计描述,可与直方图和正态分位数图结合使用,以表征数据或者分布。
偏度表示分布与正态分布的偏差的方向和相对大小。
偏度的取值范围:\((-\infty, \infty)\)
当偏度$<$0时,概率分布偏左。
当偏度\(=0\)时,数据分布服从正态分布。
当偏度\(>0\)时,概率分布右偏。
皮尔逊第一偏度系数(众数偏度)
\[\frac{平均值-众数}{标准差}
\]
皮尔逊第二偏度系数(中位数偏度)
\[\frac{3\times{(平均值 - 中位数)}}{标准差}
\]
这些系数不提供偏度类型信息。
峰度(Kurtosis)
峰度和偏度一样,也是一种统计描述。峰度描述了概率分布的形状。对于此度量,较高的峰度对应较大偏差或者异常值的极端性。
\[g2=\frac{1}{n} \sum_{i=1}^{n}(\frac{x- \mu}{\sigma})^4-3
\]
\[g2=\frac{m_4}{m_2^{2}}-3=\frac{\frac{1}{n} \sum_{i=1}^{n}(x- \mu)^4}{[\frac{1}{n} \sum_{i=1}^{n}(x- \mu)^2]^{2}}-3
\]
标准无偏估计:
\[G_2=\frac{n-1}{(n-2)(n-3)}[(n+1)g2+6]
\]
在非正态化分布中常带有偏见。
def skewness(data):
"""
:param data: 数据
:return: 偏度
"""
m3 = np.sum(((data - np.mean(data)) / np.std(data)) ** 3) / (data.shape[0])
m2 = np.sum(((data - np.mean(data)) / np.std(data)) ** 2) / (data.shape[0])
g = m3 / np.power(m2, 3 / 2)
skew = np.sqrt(data.shape[0] * (data.shape[0] - 1)) / (data.shape[0] - 2) * g
return skew
def kurtosis(data):
"""
:param data: 数据
:return: 峰度
"""
m4 = np.sum(((data - np.mean(data)) / np.std(data)) ** 4) / (data.shape[0])
m2 = np.sum(((data - np.mean(data)) / np.std(data)) ** 2) / (data.shape[0])
g2 = np.sum(((data - np.mean(data)) / np.std(data)) ** 4) / (data.shape[0]) - 3
kurt = (data.shape[0] - 1) / ((data.shape[0] - 2) * (data.shape[0] - 3)) * ((data.shape[0] + 1) * g2 + 6)
return kurt