python KS检验:检验数据是否服从指定分布;或两份数据源于同一分布

该博客介绍了如何利用Python的scipy库进行Kolmogorov-Smirnov检验(KS检验),以判断两组数据是否源自相同的分布。通过实例展示了当两组数据标准差不同时(p值远小于0.05)和相同时(p值大于0.05)的检验结果,从而说明KS检验在统计分布比较中的应用。
摘要由CSDN通过智能技术生成

KS检验

原假设:两份数据源于同一分布
拒绝假设:两份数据源于不同的分布

一般当p值低于0.01或0.05时,拒绝原假设,即认为两份数据源于不同的分布。

双样本KS检验

from scipy.stats import ks_2samp
import numpy as np

norm1 = np.random.normal(0, 5, 1000)
norm2 = np.random.normal(0, 1, 1000)
ks_value = ks_2samp(norm1, norm2)
print(ks_value)

结果为Ks_2sampResult(statistic=0.343, pvalue=1.5193815153747912e-52)pvalue小于0.05,表明源于不同分布。

而对于同一分布的数据:

from scipy.stats import ks_2samp
import numpy as np

norm1 = np.random.normal(0, 5, 1000)
norm2 = np.random.normal(0, 5, 1000)
ks_value = ks_2samp(norm1, norm2)
print(ks_value)

结果:KstestResult(statistic=0.027, pvalue=0.8595454206943325)pvalue大于0.05,接受原假设,两份数据源于同一分布。

参考资料

维基百科KS检验资料:https://en.wikipedia.org/wiki/Kolmogorov%E2%80%93Smirnov_test
scipy.stats.ks_2samp:https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.ks_2samp.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆萌的代Ma

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值