Python 比较分布:SciPy ks_2samp p 值始终为 0.0

Python Compare distribution: SciPy ks_2samp p-value always 0.0

我正在尝试比较两个分布,看看它们是否相似或不同。我尝试使用 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?非常感谢您的帮助。谢谢!

检查这个统计计算器 post。 https://stats.stackexchange.com/questions/18408/two-samples-of-the-same-distribution

这表明 Kolmogorov-Smirnov 检验。

并且您可以使用scipy进行KS测试。

https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.kstest.html