我有一个这种形式的巨大矩阵,有1000000行和10000列。这是一个玩具示例:
A B C Mean
1 3 4 2.66
2 4 3 3
1 3 4 2.66
9 9 9 9
1 3 2 2
2 4 5 3
1 2 6 3
2 3 5 3.33
列中的行"平均"表示每行的A,B和C的平均值。另一方面,列的全局均值"均值"是3.58。我想知道,使用t检验和R,每行的均值是否明显高于全局均值。如何获得p值进行比较?使用t.test()比较两组之间的平均值非常简单,但我无法找到如何将单个值与包含该值的组的平均值进行比较。
答案 0 :(得分:3)
我非常同意罗马,你应该回到简历,因为这似乎有可能给你一些误报。
但就你的R问题而言,你可以在这里尝试单样本t检验:
global.mean <- 3.58
val.matrix <- matrix(c(...),...)
pvals <- apply(val.matrix,1,function(r) t.test(r,mu=global.mean)$p.value)
### should do a multiple comparison correction here, e.g., pvals*nrow(val.matrix)
这将为您提供一个大小为nrow(val.matrix)
的向量,每个元素都是来自双侧t检验的p值,测试行的值是否为
与3.58显着不同。我不是在倡导这种统计方法,但这就是你实现它的方法。