科尔莫⼽罗夫检验(Kolmogorov-Smirnovtest)1、⽤于检验X的分布G(x)是否服从给定分布F(x),仅适⽤于连续分布的检验 PYTHON :
scipy.stats.kstest(rvs, cdf, args=(), N=20, alternative='two_sided', mode='approx', **kwds)
日本雅乐cdf是给定的分布,例如'norm','expon','rayleigh','gamma';
args=()是分布的参数
N :如果rvs是字符串或调⽤的,N表⽰样本⼤⼩
alternative='two_sided' :H0 : G(x)=F(x) H1 : G(x)≠F(x)
alternative='less' :H0 : G(x)=F(x) H1 : G(x)≤F(x)
alternative='greater' :H0 : G(x)=F(x) H1 : G(x)≥F(x)
mode : 'approx’(默认)或 'asymp'
大豆糖蜜'approx':使⽤检验统计量的精确分布的近似值
'asymp':使⽤检验统计量的渐近分布
如果p值⼤于显著性⽔平(⽐如5%),接受原假设H0,可以认为样本数据来⾃给定分布F(x)
##⽣成随机数影驰gts250上将版
import numpy as np
np.random.seed(0)
testData = al(0,1,100)
##利⽤Kolmogorov-Smirnov test检验testData是否服从正态分布
import scipy.stats as stats
stats.kstest(testData,'norm')
##输出(统计量D的值,P值)=(0.058248638723832402, 0.88658843653019392)
金东进
##统计量D的值越接近0就越表明数据和标准正态分布拟合得越好,P值>指定⽔平,不拒绝原假设,可以认为样本数据服从正态分布。战前战后
2、检验指定的两个数列是否服从相同分布
##⽣成服从卡⽅分布的随机数
import numpy as np
chi2=np.random.chisquare(98,size=100)
##检验norm和chi2是否服从同⼀分布
import scipy.stats as stats
stats.ks_2samp(norm,chi2)
##输出Ks_2sampResult(statistic=1.0, pvalue=1.5505547466854487e-45)
泰乐菌素##P值⼩于指定⽔平,拒绝原假设,认为两组数据来⾃不同的分布