计算 R 中多个算例的统计量



我有一个数据集,我想在其中应用几个测试,例如 KS 两个样本。所以我正在尝试找到一种可以将 KS 两个样本测试应用于所有样本的算法。基本思想是:

假设我有一个包含这些观察结果的数据集:

1 2 3 4
Study1 9 1 2 6
Study2 5 6 7 8
Study3 4 3 2 1
Study4 8 7 6 5
Study5 1 3 5 7
Study6 2 4 6 8
Study7 1 3 6 9
Study8 2 4 7 1
Study9 2 5 8 4
Study10 3 6 8 5

我可以通过以下方式将KS测试应用于每项研究:

ks.test(as.numeric(as.vector(df[1,])),as.numeric(as.vector(df[1,])))
ks.test(as.numeric(as.vector(df[1,])),as.numeric(as.vector(df[2,])))
ks.test(as.numeric(as.vector(df[1,])),as.numeric(as.vector(df[3,])))
...
ks.test(as.numeric(as.vector(df[1,])),as.numeric(as.vector(df[10,])))
ks.test(as.numeric(as.vector(df[2,])),as.numeric(as.vector(df[1,])))
...
ks.test(as.numeric(as.vector(df[10,])),as.numeric(as.vector(df[10,])))

这将产生 10x10 的 p 值,我的目标是将其用作距离的度量。

所以我正在寻找一种算法,它可以对 n x n 个样本运行 KS 测试,然后在 n x n 矩阵中输出 p 值。

您正在寻找outer

outer(1:10, 1:10, Vectorize(function(i,j) {ks.test(as.numeric(as.vector(df[i,])),as.numeric(as.vector(df[j,])))$p.value}))

相关内容

  • 没有找到相关文章

最新更新