如何从不同长度的表中获取数据

时间:2015-08-10 07:17:45

标签: r data-binding dataframe

好的,我相信这有一个简单的解决方案。假设以下数据

A <- 1:10
B <- rep("Part A", 10)
C <- 10:19
df1 <- data.frame(A,B,C)

A <- 1:9
B <- rep("Part B", 9)
D <- 20:28
df2 <- data.frame(A,B,D)

现在我想创建用户指定哪些列名的df3。 因此,df3应为仅包含AB的2 * 19数据框

这不起作用

df3 <- rbind(df1[A,B], df2[A,B])

我不想使用common_cols[,x]函数,因为我的真实数据集有超过1000个变量,这些变量并不总是以相同的顺序。

1 个答案:

答案 0 :(得分:4)

您的语法不适合子集化。尝试

cols <- c("A", "B")
rbind(df1[,cols], df2[,cols])

要保留的列应该是,之后的名称(或索引/逻辑)的向量。