📜  Kolmogorov-Smirnov 检验(KS 检验)(1)

📅  最后修改于: 2023-12-03 15:02:31.855000             🧑  作者: Mango

Kolmogorov-Smirnov 检验(KS 检验)介绍

Kolmogorov-Smirnov检验(KS检验)是一种用于检验两个样本是否来自同一分布的非参数假设检验方法。在统计学上,KS检验可用于诊断数据是否符合某种分布,或者比较两个分布是否相同。

KS检验原理

KS检验比较两个累积分布函数(CDF),即将每个样本值与其数据集中其他值进行比较的概率,得出两个数据集是否来自于同一分布的结论。KS统计量是两个数据集最大差距的标准化值,通常用d表示。

KS检验原理可以用以下步骤总结:

  1. 假设样本1和样本2都符合同一分布类型H0。
  2. 对样本1和样本2进行计算和排序,计算出它们的累积分布函数(CDF)。
  3. 对两个CDF计算它们的差距,即max(|F1(x) - F2(x)|)。
  4. 比较差距与统计意义上的显著性水平,以确定两个样本是否来自同一分布。
使用Python进行KS检验

在Python中,可以使用SciPy库中的ks_2samp方法进行KS检验。以下是基本的Python代码片段:

from scipy.stats import ks_2samp 

# 样本1和样本2是两个数据集
stat, p_value = ks_2samp(sample1, sample2)

print('Statistics=%.3f, p-value=%.3f' % (stat, p_value))

ks_2samp函数返回两个值:统计量和p值。统计量表示两个累积分布函数之间的最大垂直距离。p值表示检验的显著性水平。

总结

KS检验是一种检查两个数据集是否来自同一分布的方法,它通过比较两个样本的累积分布函数来确定它们的分布是否相同。在Python中,我们可以使用SciPy库中的ks_2samp函数对数据集进行KS检验。