【发布时间】:2021-04-20 04:45:12
【问题描述】:
我正在根据嵌套数据框计算汇总统计信息,并将统计信息添加到未嵌套的列中。这是一个玩具示例:
library(purrr)
library(dplyr)
library(tidyr)
df <- tribble(
~data,
tibble(pop = c(1, 2, 3)),
tibble(pop = c(4, 5, 6))
)
df2 <- df %>% mutate(median_pop = map(.x = data, ~ .x %>%
summarise(median(pop)))) %>%
unnest(median_pop) %>%
rename(median_pop = `median(pop)`)
这会产生所需的结果,但它需要最后一行中的 rename 函数调用来重新生成在 mutate 函数调用中创建的 median_pop 列名称。我很清楚unnest 以某种方式消除了 median_pop 列名,但我不清楚为什么会这样或如何防止它。 unnest 的 names_repair 或 names_sep 参数似乎可以解决问题,但我不明白如何解决。取消嵌套时是否可以保留列名?
【问题讨论】: