0

我有三个可变行长的数据框:

df1 (column names a,b,c)

df2 (column names d,e,f)

df3 (column names g,h,i)

如何将它们组合到一个表中(另一个数据框下的一个数据框)

table.all <- rbind(df1,df2,df3)

仅适用于相同的列名,但我的列名不同。

然后将此表保存到 csv:

write.csv(table.all ,"table.all .csv")
4

2 回答 2

1

您要确保所有列都是相同的数据类型,否则会出现错误,但如果您的数据框具有相同的结构,那么解决方案可能是

df1 <- data.frame(a=1,b="a",c=3)
df2 <- data.frame(d=2,e="a",f=3)
df3 <- data.frame(g=3,h="a",i=3)
library(plyr)
ll <- list(df1,df2,df3)
ldply(ll, function(l){ names(l) <- c("col1","col2","col3") 
                       l})

这也适用于具有不同行数的数据框。

于 2012-10-06T12:10:21.340 回答
0

好吧,您必须在某个时候决定 final 的列名应该是什么data.frame。为什么不将所有列名设置为您想要的名称rbind呢?

于 2012-10-06T11:58:48.057 回答