【发布时间】:2018-10-24 11:02:57
【问题描述】:
我有一个大型数据集,并且我试图将数据分组的不同列。我正在尝试使用 dplyr 和 mutate 创建一个新列,这是每个单独组的平均值。然后,我想看看这些平均值与仅一个类别的平均值之间的区别。
这个问题可能与 mtcars 数据集有关。我将如何按“cyl”和“gear”对 mtcars 数据进行分组,然后为每个组取“mpg”的平均值。然后,我想查看每个组的“mpg”平均值与“gear”==5 但具有变量“cyl”的所有汽车相比的差异。
如果我问的问题与其他人相同,我深表歉意,但我无法找到这个特定的问题。
df <- mtcars
df2 <- df %>% group_by(cyl, gear) %>% mutate(mean_mpg = mean(mpg))
【问题讨论】:
-
df2 <- df %>% group_by(cyl, gear) %>% summarise(mean_mpg = mean(mpg))应该让你开始 -
“但有变量“cyl””是什么意思?
-
我想看看每辆 4 缸车辆相对于 5 齿轮和 4 缸汽车的平均值的差异,6 缸相对于 5 齿轮和 6 缸的平均值的差异等。跨度>
-
@BrentB 您的评论似乎与您的问题相矛盾。您的问题是“按“cyl”和“gear”对 mtcars 数据进行分组,然后为每个组取“mpg”的平均值”,这意味着您可以使用 4 cyl 和3 档、4 缸和 4 档、4 缸和 5 档等(Jack Brookes 的回答涵盖了这种情况)。但是您上面的评论似乎说您想要 4、6、8 和 cyl(忽略齿轮)的均值,并将这些均值与齿轮为 5 的 4、6 和 8 cyl 的均值进行比较。我用我对您评论的解释来回答。 请编辑您的问题以明确您的目标。