【问题标题】:Mann-Whitney-U testMann-Whitney-U 检验
【发布时间】:2014-06-12 14:37:18
【问题描述】:

我有一个包含数千个样本的csv,应该比较不同处理后的基因表达:

ID    U1         U2        U3        H1        H2        H3
1     5.95918   6.07211   6.01437   5.89113   5.89776   5.95443
2     6.56789   5.98897   6.67844   5.78987   6.01789   6.12789
..

我被要求做一个Mann Whitney u test,当我使用这个时,R 给了我结果:

results <- apply(data,1,function(x){wilcox.test(x[1:3],x[4:6])$pvalue})

但是,我只得到 0.1 或 0.5 之类的值..

当我添加 alternative ="greater" 时,我得到了 0.35000 或 0.05000 之类的值,一些样本得到了 0.14314 之类的 pvalue(这是我可以接受的值)。 所以我想知道为什么 R 会给我这么奇怪的 pvalues (0.35000,..) 以及如何修复它以获得“正常”pvalues。

【问题讨论】:

  • 我们需要一些样本数据,...你应该修复你的 shift 键。未能大写会降低人类的可读性。您还应该通过“玩耍”来表达您的意思。 (将 3 个项目与 3 个项目与 M-W 进行比较几乎没有意义。描述实验设置可能会从统计角度获得更好的响应。)
  • 我希望现在没问题..为什么我不能将 3 个值与 3 个值进行比较?抱歉,我以前从未使用过此测试..
  • 您的非参数测试有效地查看了您的数据的“混洗”程度 - 只有 3+3 个样本,没有多少可能的混洗,因此 p 值将非常离散.不幸的是,三个重复在基因组学中很常见 - 如果您有很多基因(行),您应该查看 bioconductor 中的 limma 包,以便您可以跨基因共享变异信息。
  • 您可以比较它们,但该比较的结果是否具有任何统计意义则完全是另一回事。非参数测试的功效往往低于其等效参数(因为您丢弃了大量数据并仅保留排名顺序),因此每组有 3 个观察值,我怀疑您是否有足够的信息来检测除巨大之外的所有数据差异。
  • @GavinSimpson “除了巨大的差异之外”:wilcox.test(-1e9+1:3,1e9+1:3) 的 p 值仍然为 0.1(如下面的 Roland 所指出的)

标签: r apply p-value


【解决方案1】:

您正在进行非参数测试,其中测试统计数据来自排名。样本大小为 3 时,检验统计量只有几个可能的不同值。

例子:

set.seed(42)
x <- matrix(rnorm(3000), ncol=6)
ps <- apply(x, 1, function(a) wilcox.test(a[1:3], a[4:6])$p.value)
table(ps)
#ps
#0.1 0.2 0.4 0.7   1 
# 54  45 108 141 152

【讨论】:

  • 哦..所以我不应该使用这个测试,因为我有几个重复?我以为我会得到类似于 ttest 的值,基本上可以说两种处理之间的表达方式不同。
  • 您应该咨询统计学家。由于 alpha 误差膨胀,我会非常警惕你的方法。样本大小为 3 对参数检验的统计功效造成严重问题。使用如此小的样本量的非参数测试是个笑话。
  • 好吧,很遗憾,我只得到了这些数据,无法对样本量做任何事情。无论如何谢谢你的时间
猜你喜欢
  • 2013-07-11
  • 1970-01-01
  • 1970-01-01
  • 2023-03-08
  • 1970-01-01
  • 2013-05-28
  • 1970-01-01
  • 1970-01-01
  • 2021-05-17
相关资源
最近更新 更多