对数据进行建模处理时,常需要进行数据分布检验;
import numpy as np
from scipy import stats
a = np.random.normal(0,1,50)
'''输出结果中第一个为统计量,第二个为P值(统计量越接近1越表明数据和正态分布拟合的好,
P值大于指定的显著性水平,接受原假设,认为样本来自服从正态分布的总体)'''
print(stats.shapiro(a))
'''输出结果中第一个为统计量,第二个为P值(注:统计量越接近0就越表明数据和标准正态分布拟合的越好,
如果P值大于显著性水平,通常是0.05,接受原假设,则判断样本的总体服从正态分布)'''
print(stats.kstest(a, 'norm'))
'''输出结果中第一个为统计量,第二个为P值(注:p值大于显著性水平0.05,认为样本数据符合正态分布)'''
print(stats.normaltest(a))
scipy.stats.kstest(K-S检验)
kstest 是一个很强大的检验模块,除了正态性检验,还能检验 scipy.stats 中的其他数据分布类型,仅适用于连续分布的检验,
原假设:数据符合正态分布