R:创建一个具有空值的数据帧



我想在我的data.frame中有NULL值(不是NA(。以下似乎不起作用。

> data.frame(x = c(1, 2, 3), y = c(NULL, NULL, NULL))
Error in data.frame(x = c(1, 2, 3), y = c(NULL, NULL, NULL)) : 
  arguments imply differing number of rows: 3, 0

我的目标是将我的 data.frame 输出到一个.csv文件中,具有NULL值的单元格应为空。

您可以使用以下命令获取包含NULL条目的数据帧:

> data.frame(x = c(1, 2, 3), y = I(list(NULL, NULL, NULL))


解释:

如果要使用 data.frame 包含不断NULL的列,则需要使用 I 保护它们。

您还必须输入list而不是NULL s的c。那是因为c(NULL, NULL, NULL)NULL相同 - NULL不能连接。它们也不能是向量的元素,因此包含NULL值的每一列都需要是列表而不是向量。

使用 write.table 和类似的函数将在充满 NULL s 的列上调用 as.character,在空单元格中写入字符串"NULL"。如果您不希望出现这种行为,最好使用空字符串而不是 NULL s。

相关内容

  • 没有找到相关文章

最新更新