使用read.csv()读取csv时,获取"在输入中找到的嵌入式nul"

use*_*468 31 r

我正在读一个csv文件.

代码是:

mydata = read.csv("mycsv.csv", header=True, sep=",", quote="\"")
Run Code Online (Sandbox Code Playgroud)

获取以下警告:

警告消息:In scan(file = file, what = what, sep = sep, quote = quote, dec = dec,:在输入中找到的嵌入式nul(s)

现在我的CSV中的一些单元格缺少由""表示的值.

如何编写此代码以便我不会收到上述警告?

nne*_*neo 41

您的CSV可能以UTF-16编码.使用某些基于Windows的工具时,这种情况并不少见.

您可以尝试加载UTF-16 CSV,如下所示:

read.csv("mycsv.csv", ..., fileEncoding="UTF-16LE")
Run Code Online (Sandbox Code Playgroud)


小智 31

您可以尝试使用该skipNul = TRUE选项.

mydata = read.csv("mycsv.csv", quote = "\"", skipNul = TRUE)
Run Code Online (Sandbox Code Playgroud)

?read.csv

输入流中的嵌入式nuls将终止当前正在读取的字段,每次扫描一次警告一次.设置skipNul = TRUE会导致忽略它们.

它对我有用.