'Embedded nul in string' при импорте большого CSV (8 ГБ) с помощью fread ()

У меня есть большой файл CSV (8,1 ГБ), который я пытаюсь перебрать в R. Я создал CSV, используя csvkit Pythonin2csv, преобразованный из файла .txt, но каким-то образом преобразование привело к появлению в файле нулевых символов. Теперь я получаю эту ошибку при импорте:

Error in fread("file.csv", nrows = 100) : embedded nul in string: 'ÿþr\0e\0c\0d\0_\0z\0i\0p\0c\0'

I я возможность импортировать небольшие куски просто отлично сread.csv хотя, но это потому, что он позволяет кодировать UTF-16 черезfileEncoding аргумент.

test <- read.csv("file.csv", nrows=100, fileEncoding="UTF-16LE")

Я не смею пытаться импортировать 8 ГБ файл сread.csv, хоть.

Поэтому я попробовал предложенное решениеВот, в котором вы используетеsed s/\\0//g file.csv > file2.csv вытащить нули. Команда выполнилась очень хорошо и заполнила новый 8-гигабайтный файл CSV, но я получил почти идентичную ошибку:

Error in fread("file2.csv", nrows = 100) : embedded nul in string: 'ÿþr\0e\0c\0d\0_\0z\0i\0p\0c\0,\0p\0o\0s\0t\0_\0z\0i

Итак, это не сработало. Я в тупике на этом этапе. Учитывая размер файла, я не могу использоватьread.csv в целом, и я не уверен, как избавиться от нулей в оригинальном CSV. Я даже не уверен, как файл был закодирован как UTF-16. Любые предложения или советы будут с благодарностью на этом этапе.

Изменить: я на машине с Windows.

Ответы на вопрос(3)

Ваш ответ на вопрос