在差异表达分析之后,我们具有具有基因、4个不同的比较组以及相应的logFC(折叠变化)和FDR(错误发现率)值的数据框。
我们想要找到在每个比较组中显示限定值的基因(例如,在每次比较中具有IogFC〉2和FDR〈0.05的所有基因)。
示例数据:
gene_creator <- paste("gene",1:1000,sep="")
genes = sample(gene_creator,100)
dex_A <- data.frame(
gene = genes,
group = "group_A",
logFC = sample(c(-5:5), replace=T, size=100),
FDR = sample(c(0.01,1), replace=T, size=100)
)
dex_B <- data.frame(
gene = genes,
group = "group_B",
logFC = sample(c(-5:5), replace=T, size=100),
FDR = sample(c(0.01,1), replace=T, size=100)
)
dex_C <- data.frame(
gene = genes,
group = "group_C",
logFC = sample(c(-5:5), replace=T, size=100),
FDR = sample(c(0.01,1), replace=T, size=100)
)
dex_D <- data.frame(
gene = genes,
group = "group_D",
logFC = sample(c(-5:5), replace=T, size=100),
FDR = sample(c(0.01,1), replace=T, size=100)
)
dex_df <- rbind(dex_A, dex_B, dex_C, dex_D)
预期输出:
具有每个基因的载体,其中在每个比较组中Fc〉2且FDR〈0.05。
1条答案
按热度按时间qij5mzcb1#
使用dplyr(v1.1.0或更高版本),
filter()
将.by
gene
分组,将满足条件的行保存在all()
组中。然后将pull()
unique()
gene
s放入向量中。或者一个base R split-apply方法: