问题描述
|
我想在R中创建一个data.frame,其中m(一个变量)的列数为m(例如30),并且为2行,并使用0 \填充data.frame中的所有值。好像data.frame是根据行而不是列来填充值,我对此有何建议?谢谢 :)
解决方法
m
真的需要是a1ѭ还是matrix()
就足够了?
m <- matrix(0,ncol = 30,nrow = 2)
如果需要,可以将ѭ1包裹起来:
m <- data.frame(m)
或全部一行:m <- data.frame(matrix(0,nrow = 2))
,为了完整性:
按照Chase的回答,我通常使用ѭ7将矩阵强制转换为data.frame:
m <- as.data.frame(matrix(0,nrow = 2))
编辑:speed test data.frame
vs.as.data.frame
system.time(replicate(10000,data.frame(matrix(0,nrow = 2))))
user system elapsed
8.005 0.108 8.165
system.time(replicate(10000,as.data.frame(matrix(0,nrow = 2))))
user system elapsed
3.759 0.048 3.802
是的,它似乎更快(大约2倍)。