我想找到一种方法来创建 data.frame 通过使用cbind()
将许多单独的对象连接在一起。例如,如果 A、B、C 和 D 都是等长的向量,则可以创建data.frame
ABCD 与
ABCD <- cbind(A,B,C,D)
然而,当要组合的对象数量变大时,键入所有对象的名称就变得很乏味。另外,有没有办法打电话cbind()
在对象名称向量上,例如
objs <- c("A", "B", "C", "D")
ABCD <- cbind(objs)
或者在包含所有要组合的对象的列表上,例如
obj.list <- list(A,B,C,D)
ABCD <- cbind(obj.list)
目前,我能想到的唯一解决方法是使用paste()
, cat()
, write.table()
, and source()
构造参数cbind()
,将其编写为脚本并获取它的源码。这看起来像是一个非常令人讨厌的拼凑。另外,我还研究过do.call()
但似乎无法找到一种方法来完成我想要的事情。
The do.call
函数在这里非常有用:
A <- 1:10
B <- 11:20
C <- 20:11
> do.call(cbind, list(A,B,C))
[,1] [,2] [,3]
[1,] 1 11 20
[2,] 2 12 19
[3,] 3 13 18
[4,] 4 14 17
[5,] 5 15 16
[6,] 6 16 15
[7,] 7 17 14
[8,] 8 18 13
[9,] 9 19 12
[10,] 10 20 11
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)