繁体   English   中英

将 map function 应用于 R 中的嵌套小标题

[英]Applying map function to a nested tibble in R

我正在尝试复制我为 tidyverse package 找到的“旧”R 脚本。

library(dslabs)
DataTib<-as_tibble(us_contagious_diseases)


DataTib_nested <- DataTib %>%
  group_by(disease) %>%
  nest()

Mean_count_nested <- DataTib_nested %>%
  mutate(mean_count = map(.x=DataTib_nested$data, ~mean(.x$count)))

据我了解,我有一个小标题,其中数据按疾病分组,其余变量/数据嵌套,然后我尝试添加一个新列,该列应该代表嵌套 dataframe 上变量“计数”的平均值。

但我得到了错误,我不太明白:

Error: Problem with `mutate()` input `mean_count`.
x Input `mean_count` can't be recycled to size 1.
i Input `mean_count` is `map(.x = DataTib_nested$data, ~mean(.x$count))`.
i Input `mean_count` must be size 1, not 7.
i The error occured in group 1: disease = "Hepatitis A".

在此先感谢并致以最诚挚的问候!

您的语法略有错误:

DataTib_nested <- DataTib %>% 
  group_by(disease) %>% 
  nest(data = - disease) 

Mean_count_nested <- DataTib_nested %>% 
  mutate(mean_count = map_dbl(data, ~mean(.x$count)))

请注意,我使用map_dbl而不是map因为返回值是数字。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM