我正在尝试比较两个发行版,看看它们是相似还是不同。我尝试使用python scipy包中的ks_2samp。这是我的代码,
from scipy.stats import truncnorm
import matplotlib.pyplot as plt
from scipy import stats
def get_truncated_normal(mean=0, sd=1, low=0, upp=10):
return truncnorm(low - mean) / sd, (upp - mean) / sd, loc=mean, scale=sd)
x1 = get_truncated_normal(mean=183, sd=50, low=1, upp=365).rvs(5722176)
x2 = get_truncated_normal(mean=175, sd=50, low=1, upp=365).rvs(5722176)
plt.hist(x1)
plt.hist(x2)
plt.show()
print(stats.ks_2samp(x1, x2))
Output:
Ks_2sampResult(statistic=0.06409554686888352, pvalue=0.0)为什么我的输出p-value总是0.0?任何帮助都是非常感谢的。谢谢!
发布于 2019-11-02 04:18:12
检查此统计数据堆栈溢出帖子。https://stats.stackexchange.com/questions/18408/two-samples-of-the-same-distribution
这意味着科尔莫戈罗夫-斯米尔诺夫检验。
您可以使用scipy执行KS测试。
https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.kstest.html
https://stackoverflow.com/questions/58665252
复制相似问题