我有很长的数据帧列表(例如,100s),名称为d1,d2,d3,... d100。我想把它们组合成r作为df< - cbind(d1:d100)?是否有任何有效的方法来组合它们除了写所有列名称?
答案 0 :(得分:3)
您可以先将所有数据框打包到一个列表中,然后使用cbind
do.call
将它们打包。在这里,我假设您的数据帧被称为d1,d2,...并且它们都具有相同的行数:
## Sample data:
d1 <- data.frame(A = 1:3, B = 4:6)
d2 <- data.frame(C = 7:9)
d3 <- data.frame(D = 10:12, E = 13:15)
## Put them into a list:
myList <- lapply(1:3, function(ii){get(paste0("d", ii))})
## Combine them into one big data frame:
myDataFrame <- do.call('cbind', myList)
myDataFrame
# A B C D E
# 1 1 4 7 10 13
# 2 2 5 8 11 14
# 3 3 6 9 12 15