我目前正在绘制一个火山图,以便我需要计算倍数变化和 p 值。数据非常大,所以我首先在 R 中进行了一些修改。
table <- read.csv("Sample_OTU_table.csv")
head(table)
table <- matrix(colMeans(table[,2:157]))
现在你可以看到一个 156X1 的矩阵
> head(table)
[,1]
[1,] 0.3950838
[2,] 0.1429951
[3,] 0.1280243
[4,] 0.1098179
[5,] 0.1831748
[6,] 0.3418168
它是一列中 20000 多个数据中每一个的平均值。
我正在考虑合并行,例如row1,row2,row3,计算它的平均值(在这个例子中,它是(0.39 + 0.14 + 0.12)/ 3),然后离开row4。然后合并第5行、第6行、第7行并离开第8行。这样矩阵将是一个 78X1 矩阵。然后通过使用代码
newpairs <- as.matrix(pairs, nrow=2, byrow=TRUE)
我们可以将矩阵拆分成两列 X 39 行的矩阵,然后使用 simpleaffy 包,函数
pc <- get.fold.change.and.t.test(eset.rma,"table",c(",1",",2"))
将给出对变量的倍数变化和 p 值。那么火山图就很简单了。