【发布时间】:2018-02-28 17:02:55
【问题描述】:
我从 R 开始,所以我不太擅长为我的问题搜索相关答案。如果有人问过类似的问题,我很抱歉。
我有一个由数据框和列表组成的列表。 我想知道如何只保留数据帧,以便我可以将它们绑定在一起以在巨大的数据帧上生成。
这里我举个例子:
L1 <- list(c(1, "abc", 3))
L2 <- list(c("b","d"))
L3 <- list(L1,L2)
brand <- c("A","B","C","D")
price <- c(1,1,3,7)
df <- data.frame(brand , price)
brand2 <- c("E","F","G","H")
price2 <- c(20,3,5,10)
df2 <- data.frame(brand2, price2)
L4 <- list(df, L3, df2)
finaldf <- do.call("rbind.fill", L4)
不幸的是,我收到了这个错误:错误:rbind.fill 的所有输入都必须是 data.frames
所以我知道问题在于该列表 L4 中有一个列表。在我的真实数据中,大名单中甚至还有好几个名单。那么谁能告诉我如何摆脱大列表中的这些列表?非常非常感谢!
【问题讨论】:
-
澄清一下:您是否只想提取列表中那些属于 data.frame 并忽略向量的项目,然后绑定这些项目?