anderson函数只询问一个参数,那应该是1-d数组。所以我想知道如何传递两个不同的数组进行比较呢? 感谢
答案 0 :(得分:4)
将所有组合并为一个list
(在此示例中为两个数组或4个数组),并将其传递给scipy.stats.anderson_ksamp
In [12]:
import scipy.stats as ss
#data from From the example given by Scholz and Stephens (1987, p.922)
x1=[38.7, 41.5, 43.8, 44.5, 45.5, 46.0, 47.7, 58.0]
x2=[39.2, 39.3, 39.7, 41.4, 41.8, 42.9, 43.3, 45.8]
x3=[34.0, 35.0, 39.0, 40.0, 43.0, 43.0, 44.0, 45.0]
x4=[34.0, 34.8, 34.8, 35.4, 37.2, 37.8, 41.2, 42.8]
ss.anderson_ksamp([x1,x2,x3,x4])
Out[12]:
(4.4797806271353506,
array([ 0.49854918, 1.3236709 , 1.91577682, 2.49304213, 3.24593219]),
0.0020491057074350956)
它返回3个值,1:归一化k样本Anderson-Darling检验统计量。,2:显着性水平的临界值25%,10%,5%,2.5%,1%。,3:p-值。
在这个例子中,p值是0.002,我们得出结论,样本来自不同的群体。