我想通过将其与已缩放的均匀分布进行比较来对我的数据执行 KS 测试。
如何将一个 scale 参数传递给 scipy.stats.kstest 中的参数(而不向其传递任何其他参数(?我希望它采用其他参数的默认值(egs:loc(
参见:
1. https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.uniform.html
2. https://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.kstest.html
我尝试了以下内容,但它不起作用(语法无效(
stats.kstest(data, 'uniform',args=(scale=15.0))
在这种情况下,为所需的分布创建一个 lambda,并将 x 参数除以所需的比例。 示例如下:
import random
import scipy.stats as stats
data=[random.random()*15 for i in range(10000)]
stats.kstest(data, lambda x: stats.uniform.cdf(x/15.0))
另一种方法,适用于 SciPy 中的发行版:
stats.kstest(data, lambda x: stats.uniform.cdf(x,scale=15.0))