具有不同值的相似行的平均值并使它们合一

时间:2021-01-01 14:58:06

标签: r average

这是我的小数据框

head(ATAC_fc_plot)
          ENSEMBL    Peak log2FoldChange
1 ENSG00000230368   Peak4       1.565676
2 ENSG00000230368   Peak6       2.537395
3 ENSG00000230368   Peak7      -1.543704
4 ENSG00000230368   Peak8      -3.498416
5 ENSG00000067606 Peak112       1.982703
6 ENSG00000067606 Peak113       2.035416

由于不同程度的富集,我重复了这些行,因此我必须对每一行进行最终平均。例如,我有 4 个“ENSG00000230368”观察,我想将其与平均值排成一行。

我想看到的输出是“ENSG00000230368”和“ENSG00000067606”。中间一列是我的参考,就像每个基因来自哪个峰一样。因此,如果出现问题,也可以将其删除。

非常感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用 dplyr 包:

library(dplyr)

ATAC_fc_plot %>%
  group_by(ENSEMBL) %>%
  summarize(average = mean(log2FoldChange, na.rm = TRUE))