在进行t检验、F检验之前,我们往往要求样本大致服从正态分布,下面介绍两种检验样本是否服从正态分布的方法。
1 可视化
我们可以通过将样本可视化,看一下样本的概率密度是否是正态分布来
初步判断
样本是否服从正态分布。
代码如下:
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
# 使用pandas和numpy生成一组仿真数据
s = pd.DataFrame(np.random.randn(500),columns=[‘value’])
print(s.shape) # (500, 1)
# 创建自定义图像
fig = plt.figure(figsize=(10, 6))
# 创建子图1
ax1 = fig.add_subplot(2,1,1)
# 绘制散点图
ax1.scatter(s.index, s.values)
plt.grid() # 添加网格
# 创建子图2
ax2 = fig.add_subplot(2, 1, 2)
# 绘制直方图
s.hist(bins=30,alpha=0.5,ax=ax2)
# 绘制密度图
s.plot(kind=’kde’, secondary_y=True,ax=ax2) # 使用双坐标轴
plt.grid() # 添加网格
# 显示自定义图像
plt.show()
可视化图像如下:
从图中可以初步看出生成的数据近似服从正态分布。为了得到更具说服力的结果,我们可以使用统计检验的方法,这里使用的是.
scipy.stats
中的函数。
2 统计检验
1)kstest
sci