作者JJabrams (JJ)
看板R_Language
標題[問題] fread 和 未讀取資料狀態下檢查資料
時間Thu Nov 19 11:45:38 2015
[問題類型]:
程式諮詢(我想用R 做某件事情,但是我不知道要怎麼用R 寫出來)
[軟體熟悉度]:
入門(寫過其他程式,只是對語法不熟悉)
[問題敘述]:
用R讀取大概1.5億筆5G的csv資料(5 variables)
理論上資料應該是完整沒有missing value
想要用fread讀取csv檔,卻遇到下列error:
> raw_data <- fread('all_data.csv')
Read 35.1% of 151308116 rows
Error in fread("all_data.csv") :
Expected sep (',') but new line or EOF ends field 1 on line 55828616 when
reading data: 58
改用 read.csv 就可以順利讀取 (只是花了好久的時間......)
想請問:
1. 為什麼fread讀不進來?
2. 有沒有辦法在不讀取資料的狀態下, 直接去檢查 line 55828616 這邊的資料有
沒有破損?
謝謝大家!!
[關鍵字]:
dplyr,fread
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.109.22.191
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1447904741.A.5E4.html
1F:推 celestialgod: fread必須是regular csv 11/19 12:44
2F:→ celestialgod: read.csv沒有要求 11/19 12:45
3F:→ celestialgod: 可以用readLines(可以輸入特定列)查看 11/19 12:45
4F:→ JJabrams: 請問一下什麼是regular csv? 我google了一下仍然不太懂 11/19 15:52
5F:→ JJabrams: 是只有用"," "\n" """ 這三種區隔的形式嗎? 11/19 15:53
6F:→ JJabrams: 我的資料只有,和ㄧ些na 是因為這樣無法使用fread嗎?thx! 11/19 15:53
7F:→ celestialgod: 基本上,每列,數目相同就是一個regular csv 11/19 17:14
8F:→ celestialgod: ?fread Description第三列就有了 11/19 17:15