我想根據列表名稱(包含不同的id值)將數據框與列標識列表和列表合併。作爲一個例子:將數據框和列表連接到包含列表數據框的列表中
g <- data.frame(id = c("a1", "b2"), k = c(4, 5))
h <- list(a1 = list(
p = c(1, 2, 3),
l = c("A", "B", "C"),
data = mtcars
),
b2 = list(
p = c(5, 6, 7),
l = c("M", "N", "O"),
data = iris
))
我怎樣才能然後合併g和h(基於克$ ID和h的名稱)到含有除了H作爲列表列ID和k列一個數據幀G2:
# A tibble: 2 × 3
id h k
<fctr> <list> <dbl>
1 a1 <tibble [3*1]> 4
2 b2 <tibble [3*1]> 5
通過@StevenBeaupré的答案是superuseful。我把Liberty的自由轉換成了一個函數,以防其他人需要它。
library(tidyverse)
cnv_list_tibble <- function(ls) {
as_tibble(ls) %>%
gather(id, data) %>%
nest(.,-id)
}
瞧,你有一個列表列,可以用於後續的合併/加入。
什麼是理想的輸出? –