我有一个data.frame,其中一列包含data.frames。
data <- data.frame(ID = c(1,2))
data$DF <- list(data.frame(x = c(1,2), y = c(3,5)), data.frame(x = c(1,2,3), y = c(3,5,7)))
data
ID DF
1 1, 2, 3, 5
2 1, 2, 3, 3, 5, 7
我想将这些数据拆分成长格式。
ID DF.x DF.y
1 1 3
1 2 5
2 1 3
2 2 5
2 3 7
有一种简单的方法吗?
答案 0 :(得分:2)
我们可以使用unnest
tidyr
library(tidyr)
unnest(data)
或base R
选项
cbind(ID = rep(data$ID, sapply(data$DF, nrow)), do.call(rbind, data$DF))