我想NULL在我的 data.frame 中包含值(而不是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
Run Code Online (Sandbox Code Playgroud)
我的目标是将 data.frame 输出到 .csv 文件中,并且包含NULL值的单元格应该为空白。
小智 7
您可以使用以下方法获取包含条目的数据框NULL:
> data.frame(x = c(1, 2, 3), y = I(list(NULL, NULL, NULL))
解释:
如果您想使用data.frame包含经常出现的列NULL,则需要使用 来保护它们I。
您还必须输入 alist而不是 a cof NULLs。这是因为c(NULL, NULL, NULL)is 等同于NULL-- NULLs 不能连接。它们也不能是向量的元素,因此包含NULL值的每一列都需要是列表而不是向量。
使用write.table和 类似的函数将调用as.character充满 s 的列NULL,在空单元格中写入字符串“NULL”。如果您不希望出现这种行为,最好使用空字符串而不是NULLs。