select 根据 R 中行或列的类别的数据框元素

select elements of a dataframe according to the category of a row or column in R

对于 4 个基因中的每一个(每个基因都在列上),我需要测试其平均表达对于患有稳定和进行性疾病的患者是否相等,并存储相应的 p 值。有人可以帮我吗?语言在 R 中。 这是我的数据框的图片:

假设这是你的数据框:

df = data.frame(y=sample(c("progres.","stable"),100,replace=TRUE),matrix(rnorm(100*4),ncol=4))
colnames(df)[-1] = c("X1000_at","X1001_at","X1002_at","X1003_at")

如果你只需要p.value,你可以这样做:

apply(df[,-1],2,function(i)t.test(i ~ df$y)[["p.value"]])
  X1000_at   X1001_at   X1002_at   X1003_at 
0.14861795 0.11653459 0.01820033 0.41873270 

在上面,您遍历基因列,t.test 在由 y 列划分的组之间,仅捕获 p 值。