在R中绑定不相等的数据帧列表

时间:2014-05-26 17:40:32

标签: r

我有这样的数据框列表:

 listdata <- list(matrix(c(1,1,1,1,3,3,3,3),nrow=2,ncol=4),matrix(c(1,1,1,1,2,2,2,2),ncol=1),matrix(c(1,1,1,1,2,2,2,2),nrow=2))
 FrameData <- lapply(listdata, function(x) as.data.frame(x))

我如何对数据帧的列表进行搜索,以便排除1列向量? 我想要的最终输出是:

    V1 V2 V3 V4
1   1  1  3  3
2   1  1  3  3
3   1  1  2  2
4   1  1  2  2

1 个答案:

答案 0 :(得分:2)

您可以通过对列表进行子集化并使用do.call

来执行此操作
do.call(rbind, FrameData[sapply(FrameData, function(x) ncol(x)>1)])
#   V1 V2 V3 V4
# 1  1  1  3  3
# 2  1  1  3  3
# 3  1  1  2  2
# 4  1  1  2  2

这里我只检查每个data.frame是否有多个列