r - 使用 group_by 和 mutate 根据多个条件添加新列时出现意外的“=”

Posted

技术标签:

【中文标题】r - 使用 group_by 和 mutate 根据多个条件添加新列时出现意外的“=”【英文标题】:r - Unexpected '=' while using group_by and mutate to add a new column based on multiple conditions 【发布时间】:2021-09-12 21:27:16 【问题描述】:

我想根据 2 列(AB)对我的dataset 进行分组,然后根据这些子组计算第三列(C)的均值。

这是我的代码:

data %>% 
  group_by(A, B) %>%
  mutate(data$my_new_column = mean(C))

我收到一条错误消息,指出“group_by(A, B) %>% 中有意外的 '=' 变异(数据$my_new_column =“

有什么想法吗?谢谢

【问题讨论】:

【参考方案1】:

如果我们要创建一个新列,只需删除data$

library(dplyr)
data %>% 
  group_by(A, B) %>%
  mutate(my_new_column = mean(C, na.rm = TRUE))

【讨论】:

谢谢,它有效!我还必须添加data <- data %>%

以上是关于r - 使用 group_by 和 mutate 根据多个条件添加新列时出现意外的“=”的主要内容,如果未能解决你的问题,请参考以下文章

R语言使用dplyr包使用group_by函数summarise函数和mutate函数计算分组下的均值标准差样本个数以及分组均值的95%执行区间对应的下限值和上限值(Calculate CI)

R语言dplyr包使用arrange函数group_by函数mutate函数生成分组数据的排名(rank)实战(Rank Variable by Group):升序排名降序排名以及相同排名的处理

使用 group_by > mutate > slice 的更有效方式

当尝试在 group_by 和 mutate 中使用 get() 调用对象时,它会调出整个对象而不是分组对象。我该如何解决?

R使用dplyr group_by / sum for循环,作为连接列表输出

了解 dplyr 和 group_by