我有一個CSV文件是這樣的:讀CSV但跳過逃脫逗號
id,name,value
1,peter,5
2,peter\,paul,3
我怎樣才能讀取這個文件,並讓R是"\,"
並不表示一個新列,只有","
。
我必須添加該文件有400MB。
感謝
我有一個CSV文件是這樣的:讀CSV但跳過逃脫逗號
id,name,value
1,peter,5
2,peter\,paul,3
我怎樣才能讀取這個文件,並讓R是"\,"
並不表示一個新列,只有","
。
我必須添加該文件有400MB。
感謝
您可以使用readLines()
將文件讀入內存,然後預先處理它。如果你願意到非獨立的逗號轉換成別的東西,你可以這樣做:
> read.csv(text = gsub("\\\\,", "-", readLines("dat.csv")))
id name value
1 1 peter 5
2 2 peter-paul 3
另一種選擇是利用從data.table的fread
函數就可以作爲系統命令的事實第一個論點。然後,你可以做類似的文件sed
操作中閱讀它(這可能是也可能不是更快)前:
> data.table::fread("sed -e 's/\\\\\\,/-/g' dat.csv")
id name value
1: 1 peter 5
2: 2 peter-paul 3
你總是可以再使用gsub()
到臨時-
分離器轉換回一個逗號。
使用read.csv和sep =「,」,像這樣的df < - read.csv(「您的文件路徑/df.csv」,sep =「,」) – 2016-04-14 11:11:46