【发布时间】:2019-10-21 15:04:07
【问题描述】:
下面是我要执行的数据框和代码。
如下所示,我想通过x 和color 进行分组。
x 是一个字符串,因此我使用了 group_by_at 函数。
df <- data.frame(
color = c("Yellow", "Blue", "Green", "Red", "Magenta"),
values = c(24, 24, 34, 45, 49),
Quarter = c("Period1","Period2" , "Period3", "Period3", "Period1"),
Market = c("Camden", "StreetA", "DansFireplace", "StreetA", "DansFireplace"))
list = c("Market", "Quarter")
df_all <- do.call(rbind, lapply(list, function(x) {
df_l <- df %>%
group_by_at(x) %>%
group_by(color) %>%
summarise(values = sum(values)) %>%
mutate(cut = x) %>%
data.frame()
colnames(df_l)[colnames(df_l) == x] <- "Grouping"
df_l
}))
问题在于,当此代码运行时,它没有按x 分组。只有当我删除group_by(color) 时,它才会按x 分组。
我的目标是同时按x 和color 分组。
【问题讨论】:
-
@joran 没试过,不行。