Kolmogorov–Smirnov test

  • Post author:
  • Post category:其他




柯尔莫可洛夫-斯米洛夫检验(K-S test)











在统计学中,柯尔莫可洛夫-斯米洛夫检验基于累计分布函数,用以检验两个经验分布是否不同或一个经验分布与另一个理想分布是否不同。









在进行累计概率(cumulative probability)统计的时候,你怎么知道组之间是否有显著性差异?有人首先想到单因素方差分析或双尾检验(2 tailed test


)。其实这些是不准确的,最好采用Kolmogorov-Smirnov test



(柯尔莫诺夫-斯米尔诺夫检验)来分析变量是否符合某种分布或比较两组之间有无显著性差异。






Kolmogorov-Smirnov检验



它是检验单一样本是否来自某一特定分布的方法。比如检验一组数据是否为正态分布。


它的检验方法是以样本数据的累计频数分布与特定理论分布比较,若两者间的差距很小,则推论该样本取自某特定分布族。


即对于假设检验问题:


H0:样本所来自的总体分布服从某特定分布


H1:样本所来自的总体分布不服从某特定分布


这里我们仅以 Kolmogorov-Smirnov 正态性检验为例介绍它的统计原理。


F0(x)表示分布的分布函数,Fn(x)表示一组随机样本的累计概率函数。设D为F0(x)与Fn(x)差距的最大值,定义如下式: D=max|Fn(x)-F0(x)|


结论:当实际观测D>Dα,则接受H1,反之则不拒绝H0假设。


例如:35位健康男性在未进食前的血糖浓度如表所示,试测验这组数据是否来自均值μ=80,标准差σ=6的正态分布 87 77 92 68 80 78 84 77 81 80 80 77 92 86 76 80 81 75 77 72 81 90 84 86 80 68 77 87 76 77 78 92 75 80 78 n=35


检验过程如下:


假设H0:健康成人男性血糖浓度服从正态分布


H1







健康成人男性血糖浓度不服从正态分布计算过程如表:


结论:上表中的理论值F0(x)是根据标准化值z查表得到,实际上


D=max |Fn(x)-F0(x)|=0.1754<D


0.55, 35


=0.23查D值表,故不能拒绝H0即健康成年男人血糖浓度服从正态分布,当样本容量n大时可以用D



α





n



=1.36/ 求得结果,


如上述D


0.55, 35


=1.36/ =0.2299=0.23


χ

2

检验与Kolmogorov-Smirnov正态性检验都采用实际频数和期望频数进行检验。它们之间最大的区别在于前者主要用于类别数据,而后者主要用于有单位的数量数据,有时前者也可以用于数量数据但必须将数据分组得到实际观测频数,并要求多变量之间独立,而后者可以不分组直接把原始数据进行检验因此k-s检验对数据的应用较完整。



reference:



http://blog.sina.com.cn/s/blog_5ecfd9d90100cigp.html



http://blog.csdn.net/liuxincumt/article/details/8016094