使用管道和 dplyr 将项目附加到列表

using pipe and dplyr to append item to list

我有一个数据框 mappedAttModel 和一个名为 features 的列表。我想附加管道项目。我收到错误对象 (.)not found。

for (i in 1:length(features)){
 mappedAttModel %>%
 dplyr::filter(.data$att == features[[i]]) %>%
 dplyr::select(.data$model) %>%
 purrr::pluck(1,1) %>%
 #append to the list
 ###l1 <- append(l1,.)
 }```

您可以使用 purrr::map 到 return 列表,而不是使用 for 循环增长列表。这样的东西应该可以工作

l1 = 
  purrr::map(1:length(features),
             function(i) {
               mappedAttModel %>%
                 dplyr::filter(.data$att == features[[i]]) %>%
                 dplyr::select(.data$model) %>%
                 purrr::pluck(1,1)
             }
  )

请注意,根据您想要的输出类型,地图有多种变体。