【发布时间】:2021-08-29 04:23:40
【问题描述】:
使用data.frame()、tibble() 或bind_cols() 将向量绑定到data.frame 中很简单:
library(tidyverse)
x <- 1:5
y <- letters[1:5]
d <- tibble(x, y)
反转此操作的最有效方法是什么 - 即,获取一个数据帧并将其分解为长度等于 ncol(d) 的列表?在上面的示例中,所需的输出如下所示:
> list(x = x, y = y)
$x
[1] 1 2 3 4 5
$y
[1] "a" "b" "c" "d" "e"
完成此操作的单个函数会很有用,例如,当将数据帧传送到 pmap() 时:
d %>%
break_into_list() %>% # missing function here
pmap(function(x, y) paste(x, y)) # scales to dataframe with ncol > 2
【问题讨论】:
-
您真的需要在
list中转换tibble吗?也许更好的方法是使用group_map。此函数需要tibble作为输入。