【发布时间】:2017-08-09 04:03:17
【问题描述】:
我需要为列表中的所有数据框重命名第二列。我正在尝试使用 purrr::walk。
代码如下:
cyl.name<- c('4-cyl', '6-cyl', '8-cyl')
cyl<- c(4,6,8)
car <- map(cyl, ~mtcars %>% filter(cyl==.x) %>%
group_by(gear) %>%
summarise(mean=mean(hp)) )
walk (seq_along(cyl.name), function (x) names(car[[x]])[2]<- cyl.name[x])
当我检查列名时,所有平均列仍然命名为“平均”。我做错了什么?
【问题讨论】:
-
你让你的数据结构比它需要的更复杂和凌乱;你只需要
mtcars %>% group_by(gear, cyl) %>% summarise(mean = mean(hp))