0

我有一些批量 RNA 测序数据,需要对其进行差异表达显着性测试。我有两个条件,WT 和 KO,每个有两个重复,给我一个如下所示的数据框(列是计数):

       WT1   WT2   KO1   KO2
 gene1 1.3   1.23  3.42  3.45
 gene2 2.6   2.54  1.22  1.21
 gene3 5.54  2.32  1.21  1.10 

我的问题是,如何在右侧获得每个基因的 p 值列,以便构建数据的火山图?基本上,我需要使用什么统计测试来生成该列,以及我在 R 中使用什么函数来做到这一点?如果这在技术上不是我应该在这里问的问题,我很抱歉,但坦率地说,我不知道还能在哪里发帖。提前致谢!

4

1 回答 1

0

以防万一有人最终关心这个问题,而我不只是对着以太大喊大叫(通常),我想通了。基本上,对于这种数据,我需要使用单向方差分析检验或双尾 t 检验,它们基本上最终是相同的(至少在这种情况下)。我决定使用 R 中的 t.test() 函数,因为它更容易理解(至少如果你对 R 中的统计不太熟悉的话)。通常, t.test 函数会生成如下所示的摘要:

 Welch Two Sample t-test

 data:  bulk_data[1, 1:2] and bulk_data[1, 3:4]
 t = -0.93364, df = 1.1978, p-value = 0.5002
 alternative hypothesis: true difference in means is not equal to 0
 95 percent confidence interval:
  -0.3807992  0.3068266
 sample estimates:
  mean of x  mean of y 
 0.09525708 0.13224335 

我需要删除 p 值对象并将其添加到数据框的第五列,所以我使用了这个循环:

  for (i in 1:nrow(bulk_data)) {
   t <- t.test(x = bulk_data[i, 1:2], y = bulk_data[i, 3:4], alternative = "two.sided")
   bulk_data[i, 5] <- t$p.value
  }

这在第五列中给了我一个非常好的 p 值列表。

于 2020-01-30T19:05:55.080 回答