麻烦在r中创建一个空的数据帧

时间:2017-06-26 08:31:24

标签: r dataframe

我正在尝试在R中创建一个空的data.frame,以便稍后填充它。我试图创建的结构很简单:它只有一个带有一些名称(字符串)的列,另一个是每个条目是(可能)不同长度的整数向量

例如:

约翰| 1,2

标记| 4,5,6

andy | 9

我想创建结构并在以后填写它,因为我正在从另一个数据框中读取数据...我可以使用循环来完成它,但我想知道是否有更快更优雅的解决方案......我试过了

data<-data.frame(people = names,counts = replicate(20,list(c(numeric(0)))))

其中names是20个元素的列表。

我也试过

rep(list(c(numeric(0))),20)

但我总是得到同样的错误

arguments imply differing number of rows: 20, 0

我希望你发现这个问题很有趣而且不是太愚蠢,因为我是R的新手......我曾经是一个matlab粉丝LOL

谢谢

1 个答案:

答案 0 :(得分:0)

创建一个空数据框:

data <- data.frame(names = character(0), counts = I(list()), stringsAsFactors = FALSE)

创建一个20行数据框,其中包含 NA s (编辑)空字符串""和空数字向量列表:< / p>

data <- data.frame(names = character(20), counts = I(replicate(20, numeric(0), simplify = FALSE)), stringsAsFactors = FALSE)

编辑:如果您想要NA而不是"",请尝试rep(NA_character_, 20)而不是character(20)