r data.frame 到命名列表

r data.frame to a named list

我想要一种将 data.table 或 tibble 转换为命名列表的简单方法。 我猜它可能会因 purrr、nest 和 split 而下降。这是闪亮的选项列表。

有类似的问题,但没有找到这样的。

d <- tidyr::tribble(
  ~key,  ~value,
  'a',        1,
  'b',        2,
  'c',        3
)

result <- list(a = 1, b = 2, c = 3)

一个选项是 deframe 创建一个命名的 vector 然后使用 as.list。将每个元素转换为 list 元素

library(tibble)
library(dplyr)
deframe(d) %>%
   as.list

或在 base R 中与 split

with(d, split(value, key))