Python ks_2samp给出了意外的p值

Python ks_2samp给出了意外的p值,python,scipy,Python,Scipy,我想用两个样本的K-S检验来比较两个分布。 我正在使用python的(2.7)KS2amp,但遇到了一些问题 首先,我不明白我是否必须把数组和数据作为参数,或者建立它们的累积分布。我想第一个 其次,当我对数据使用ks_2samp时,我得到的返回p值看起来不现实 例如,对于两个如下所示的分布: ks_2放大器返回: D值=0.038629201101928384 P值=0.0 这意味着这些分布不是从同一个分布(粗略地说)派生出来的。我觉得这些数据很奇怪。。。它看起来也很奇怪,像“0.0”这样的结

我想用两个样本的K-S检验来比较两个分布。 我正在使用python的(2.7)KS2amp,但遇到了一些问题

首先,我不明白我是否必须把数组和数据作为参数,或者建立它们的累积分布。我想第一个

其次,当我对数据使用ks_2samp时,我得到的返回p值看起来不现实

例如,对于两个如下所示的分布:

ks_2放大器返回: D值=0.038629201101928384 P值=0.0

这意味着这些分布不是从同一个分布(粗略地说)派生出来的。我觉得这些数据很奇怪。。。它看起来也很奇怪,像“0.0”这样的结果,因为任务通常会给出许多小数。。。 在输入中使用类似的数据,例如p-value=6.65e-136,这实际上非常奇怪

有什么问题吗?还是可以

在我的数组中有许多“南”,但我也对数据运行ks2samp,在那里我屏蔽了南,得到了相同的结果。所以我认为它不在乎


提前非常感谢

我认为docstring()清楚地表明,参数是您的示例数据(而不是CDF)。你的样品有多大?@WarrenWeckesser我就是这么想的。我给出的结果是使用我的数据获得的,即数组长度为500000个元素(数量级…)。它们可能太大了吗?谢谢(如果需要的话:我的数组有许多“nan”,元素的“实际”数量要低一个数量级)
ks_2amp
不是为处理
nan
s而设计的,它可能会给你一个不正确的p值。在调用
ks_2samp
@WarrenWeckesser之前,您应该将它们从数据中删除。实际上,我屏蔽了nans,并在屏蔽阵列上重新运行ks_2samp,获得了相同的结果。。。也许我可以尝试从数组中完全删除这些数据。。。非常感谢。