Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何将NA值写为空,而不是空引号_R_Csv_Data.table_Na - Fatal编程技术网

R 如何将NA值写为空,而不是空引号

R 如何将NA值写为空,而不是空引号,r,csv,data.table,na,R,Csv,Data.table,Na,当我将fwrite写入csv时,我会得到NA值的空引号 我什么都不想要 这是csv # csv_in 1,2,,3 4,5,Dave,6 我找不到任何设置na=以获得此输出的方法 编辑 dput是问题的线索 # csv_in 1,2,,3 4,5,Dave,6 structure(list(V1 = c(1L, 4L), V2 = c(2L, 5L), V3 = c("", "Dave" ), V4 = c(3L, 6L)), row.names = c(NA, -2L), class =

当我将
fwrite
写入csv时,我会得到NA值的空引号

我什么都不想要

这是csv

# csv_in
1,2,,3
4,5,Dave,6
我找不到任何设置
na=
以获得此输出的方法

编辑

dput是问题的线索

# csv_in
1,2,,3
4,5,Dave,6

structure(list(V1 = c(1L, 4L), V2 = c(2L, 5L), V3 = c("", "Dave"
), V4 = c(3L, 6L)), row.names = c(NA, -2L), class = c("data.table", 
"data.frame"), .internal.selfref = <pointer: 0x0000000000111ef0>)

# csv_in_alternative
1,2,,3
4,5,,6

structure(list(V1 = c(1L, 4L), V2 = c(2L, 5L), V3 = c(NA, NA), 
    V4 = c(3L, 6L)), row.names = c(NA, -2L), class = c("data.table", 
"data.frame"), .internal.selfref = <pointer: 0x0000000000111ef0>)

#csv#
1,2,,3
4,5,戴夫,6
结构(列表)(V1=c(1L,4L),V2=c(2L,5L),V3=c(“,”Dave“
),V4=c(3L,6L)),row.names=c(NA,-2L),class=c(“data.table”,
“data.frame”),.internal.selfref=)
#csv_in_备选方案
1,2,,3
4,5,,6
结构(列表)(V1=c(1L,4L),V2=c(2L,5L),V3=c(NA,NA),
V4=c(3L,6L)),row.names=c(NA,-2L),class=c(“data.table”,
“data.frame”),.internal.selfref=)

仍然不知道如何控制这种行为,但是

请制作一个可复制的示例,即dput(x)并粘贴进去。我无法复制您的输出:当我有一个
NA
时,我得到一个空白,没有引号;当我有文本空字符串
”时,我会得到双引号。我添加了一个可复制的示例。有趣的是,只有当另一行具有字符值时才会发生这种情况。替换“Dave”的数值不会产生空引号您的示例加强了我对空字符串的评论,我没有看到使用引号编写的
NA
(仅
“”
)。如果您确信其余数据是“安全的”,则可以使用
fwrite(…,quote=FALSE)
禁用所有引用,即使使用
NA
”。(请注意,带引号或逗号的数据在读入时会断开。)我添加了dput-我可以看到,根据是否存在其他数据,空格的处理方式有所不同。请制作一个可复制的示例,即
dput(x)
,并将其粘贴进去。我无法复制您的输出:当我有
NA
时,我得到一个空白,没有引用;当我有文本空字符串
”时,我会得到双引号。我添加了一个可复制的示例。有趣的是,只有当另一行具有字符值时才会发生这种情况。替换“Dave”的数值不会产生空引号您的示例加强了我对空字符串的评论,我没有看到使用引号编写的
NA
(仅
“”
)。如果您确信其余数据是“安全的”,则可以使用
fwrite(…,quote=FALSE)
禁用所有引用,即使使用
NA
”。(请注意,带有引号或逗号的数据在读入时会断开。)我添加了dput-我可以看到,根据是否存在其他数据,空格的处理方式有所不同。
# csv_in
1,2,,3
4,5,Dave,6

structure(list(V1 = c(1L, 4L), V2 = c(2L, 5L), V3 = c("", "Dave"
), V4 = c(3L, 6L)), row.names = c(NA, -2L), class = c("data.table", 
"data.frame"), .internal.selfref = <pointer: 0x0000000000111ef0>)

# csv_in_alternative
1,2,,3
4,5,,6

structure(list(V1 = c(1L, 4L), V2 = c(2L, 5L), V3 = c(NA, NA), 
    V4 = c(3L, 6L)), row.names = c(NA, -2L), class = c("data.table", 
"data.frame"), .internal.selfref = <pointer: 0x0000000000111ef0>)