在Python中的两个样本Kolmogorov – Smirnov测试中获取Y的临界值



在两个样本kolmogorov – smirnov测试(y1,y2)的测试中,我想知道y的临界值最大化ks值(有时称为d)。

但是,ks_2samp仅返回Dp-value。请参阅Scipy.stats.ks_2samp¶。

有没有包裹可以进行两个样本Kolmogorov – Smirnov测试,并返回Y的临界值?

我读取scipy.stats.ks_2samp源代码,然后将其更改为

def ks_2samp_val(data1, data2):
    data1 = np.sort(data1)
    data2 = np.sort(data2)
    n1 = data1.shape[0]
    n2 = data2.shape[0]
    data_all = np.concatenate([data1, data2])    
    cdf1 = np.searchsorted(data1, data_all, side='right') / (1.0*n1)
    cdf2 = np.searchsorted(data2, data_all, side='right') / (1.0*n2)
    return data_all[np.argmax(np.absolute(cdf1 - cdf2))]

对我有用

相关内容

  • 没有找到相关文章

最新更新