如何使用map?
将值g移动到df中的列中List of 2
$ f :List of 2
..$ df:'data.frame': 50 obs. of 2 variables:
.. ..$ o: num [1:50] 0.785 0.253 0.228 0.323 0.332 ...
.. ..$ m: chr [1:50] "A" "N" "A" "N" ...
.. ..$ g: num [1:50] 0
..$ g : num 0
$ g2:List of 2
..$ df:'data.frame': 50 obs. of 2 variables:
.. ..$ o: num [1:50] 0.0271 0.6264 0.1487 0.2008 0.6946 ...
.. ..$ m: chr [1:50] "G" "H" "G" "H" ...
.. ..$ g: num [1:50] 5
..$ g : num 5
str之后的预期结果是:
map(aq,~mutate(.$df$g=.$g))
{{1}}不起作用。还有其他想法如何做到这一点?
答案 0 :(得分:1)
与Akrun的评论相同的输出(即一个较少的嵌套级别),基于您的代码:
map(aq, ~ dplyr::mutate(.x$df, g = .x$g))
简单编辑以获得所需的结构:
map(aq, ~ list(df = dplyr::mutate(.x$df, g = .x$g), g = .x$g))
(编辑:根据Misha的评论,这适用于purrr
(0.2.2.9000
)的开发版本,但不适用于当前的CRAN版本(0.2.2
)。不知道为什么尚未)。