首页 > 解决方案 > 在R中的数据框中绘制组的平均值

问题描述

我在不同的时间点对每个样本 (Sample) 进行了三次重复 (SampleID) 的研究。现在,我想绘制特征“有氧”的三次重复的平均值。例如,我想绘制好氧细菌数量随时间的变化。因此,我需要计算一式三份的平均值(和标准偏差),然后在图中绘制这些平均值。在这里,我可以想象使用 geom_line 或 geom_point 图。

  SampleID  Sample     Aerobic  Anaerobic Day
    [Factor] [Factor]    [num]     [num]   [num]
1    V1.1.K1  V1.1.K 0.610063430 0.05146154   1
2    V1.1.K2  V1.1.K 0.740887757 0.02115290   1
3    V1.1.K3  V1.1.K 0.683726217 0.04270182   1
4    V1.1.N1  V1.1.N 0.432019752 0.35722350   1
5    V1.1.N2  V1.1.N 0.515792694 0.41357935   1
6  V1.14.K16 V1.14.K 0.038141335 0.84496088  14
7  V1.14.K17 V1.14.K 0.042078682 0.76523093  14
8  V1.14.K18 V1.14.K 0.009594763 0.90767637  14
9   V1.14.N0 V1.14.N 0.513100502 0.10618731  14
10 V1.14.W16 V1.14.W 0.483710571 0.32765968  14

我该怎么做?我用下面的代码试过了

plot <- mydata %>%
        group_by(Sample) %>%
        mutate(Mean=mean(Aerobic)) %>%
        ggplot(aes(x=Day, y=Aerobic)) +
        geom_point()

如果我用谷歌搜索这些问题,我只会得到关于如何单独计算平均值的信息,而不是建立一个包含不同变量平均值的新表。有没有类似的东西

calc_mean_by_group ??

你会帮我很多:)

标签: rplotgroup-bymean

解决方案


用于计算均值的简单 base-R 解决方案:

tapply(X = foo$Aerobic, INDEX = foo$Sample, FUN = mean)

(“foo”是你的 data.frame 的名称)


推荐阅读