【发布时间】:2020-06-16 12:24:29
【问题描述】:
我有一个关于在嵌套数据框中引用数据列的非常简单的问题。
对于一个可重现的示例,我将 mtcars 嵌套在变量 am 的两个值中:
library(tidyverse)
mtcars_nested <- mtcars %>%
group_by(am) %>%
nest()
mtcars_nested
它给出的数据看起来像这样。
#> # A tibble: 2 x 2
#> # Groups: am [2]
#> am data
#> <dbl> <list>
#> 1 1 <tibble [13 × 10]>
#> 2 0 <tibble [19 × 10]>
如果我现在想使用purrr::map 对am 的每个级别取mpg 的平均值
我想知道为什么这不起作用:
take_mean_mpg <- function(df){
mean(df[["data"]]$mpg)
}
map(mtcars_nested, take_mean_mpg)
Error in df[["data"]] : subscript out of bounds
或者一个更简单的问题是:我应该如何正确引用 mpg 列,一旦它嵌套。我知道这不起作用:
mtcars_nested[["data"]]$mpg
【问题讨论】: