我有一個大型文件(3.5G),我試圖使用data.table::fread
導入。導入帶fread的csv時出現'Embedded nul in string'錯誤
它最初是從一個以文本形式打開並保存爲CSV的rpt文件創建的。
對於較小的文件(相同類型的數據相同的列和所有文件,這只是一個更長的時間範圍和更廣泛的覆蓋範圍)。
當我嘗試運行
mydata <- fread("mycsv.csv")
我得到的錯誤:
Error in fread("mycsv.csv") : embedded nul in string: 'y\0e\0a\0r\0'
這是什麼意思?
sed 's/\\0//g' mycsv.csv > mycsv.csv
或由@marbel建議,FREAD允許您通過sed的文字裏面電話:
它看起來像UTF-16(每個字符2個或更多字節,幾乎總是2個字節)。對於ASCII,您將看到ASCII值,然後是0字節。 –
加載從大型數據集生成的RData文件時,我遇到了同樣的問題。我重新生成了RData,問題消失了。似乎是因爲我的內存不足而造成的。 – Cyrille
當您嘗試用'fread'不恰當地打開RDS文件時,也會出現此錯誤。不要問我如何知道這一點。 –