初始化数据框(data.frame)。

57

如果你知道数据框(DataFrame)的维度,有没有一种快速初始化空的数据框的方法?例如:

假设我想要一个空的数据框,它有100行和10列:

x <- data.frame(1:100,2,3,4,5,6,7,8,9,10) 
dim(x) ## that's right

但是如果我想要类似300列的数据,那么如何快速初始化数据框中的列?

x <- data.frame(1:100,2,3,4,5 ....) ## *cries*

3
@ZheyuanLi 五年后查找重复内容。太好了。 - Brandon Bertelsen
2个回答

77
> df <- data.frame(matrix(ncol = 300, nrow = 100))
> dim(df)
[1] 100 300

我该如何为部分列添加列名? - Herman Toothrot
1
colnames(df) = paste0("a", 1:300) - Mark Bower
@MarkBower +1 我通常会在数据框中使用 names() - Gavin Simpson

36

我总是只是将一个矩阵转换:

x <- as.data.frame(matrix(nrow = 100, ncol = 10))

谢谢Matt!看起来Gavin比你更快打出了那个类型:P - Brandon Bertelsen
1
@Brandon,其实@Matt比我先回答了。我把输出dim(df)加上去的事情归咎于这个原因;-) - Gavin Simpson
1
嗯,你证明了维度并实际使用了问题中指定的列数;什么更重要以达到最佳效果?无论如何,为我编辑他人帖子的能力做出贡献可能是不明智的。 - Matt Parker

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接