scipy p值返回0.0

and*_*ndy 5 python statistics scipy

使用2个样本Kolmogorov Smirnov检验,我的p值为0.0.

>>>scipy.stats.ks_2samp(dataset1, dataset2)
(0.65296076312083573, 0.0)
Run Code Online (Sandbox Code Playgroud)

查看2个数据集的直方图,我非常有信心它们代表两个不同的数据集.但是,真的,p = 0.0?这似乎没有意义.它不应该是一个非常小但正数吗?

我知道返回值是numpy.float64类型.这与它有关吗?

编辑:数据:https://www.dropbox.com/s/jpixhz0pcybyh1t/data4stack.csv

scipy.version.full_version
'0.13.2'
Run Code Online (Sandbox Code Playgroud)

alk*_*lko 11

是的,概率非常小:

>>> from pprint import pprint
>>> pprint ([(i, scipy.stats.ks_2samp(dataset1, dataset2[:i])[1]) 
...                for i in range(200,len(dataset2),200)])
[(200, 3.1281733251275881e-63),
 (400, 3.5780609056448825e-157),
 (600, 9.2884803664366062e-225),
 (800, 7.1429666685167604e-293),
 (1000, 0.0),
 (1200, 0.0),
 (1400, 0.0),
 (1600, 0.0),
 (1800, 0.0),
 (2000, 0.0),
 (2200, 0.0),
 (2400, 0.0)]
Run Code Online (Sandbox Code Playgroud)

  • 其中哪一个是真正的 p 值? (2认同)