我很難將大的(50GB)csv文件分解爲更小的部分。每行有幾千個字段。一些字段是用雙引號括起來的字符串,其他字段是整數,小數和布爾值。使用字段數量將文件拆分爲更小的文件
我想逐行解析文件並按每行中的字段數拆分。這些字符串可能包含幾個逗號(如),以及一些空字段。
,, 1,30,50 「由父親,兒子和$ 4,000女兒賣」,,,,, 12 ,,, 20.9,0,
我嘗試使用
perl -pe' s{("[^"]+")}{($x=$1)=~tr/,/|/;$x}ge ' file >> file2
將引號內的逗號更改爲|但那不起作用。我打算使用
awk -F"|" conditional statement appending to new k_fld_files file2
有沒有更簡單的方法來做到這一點?我正在看python,但我可能需要一個實用程序,它將逐行處理文件。
那麼,是一列意思是一個文件? – 2012-08-17 00:36:19
這是一行的一部分。有幾百萬行。 – Yoda 2012-08-17 00:40:38
更好地重新導出您的文件與字段分隔符不包含在您的數據。 '|'字符通常是安全的,並且可見,不像其他最喜歡的選項卡字符。祝你好運。 – shellter 2012-08-17 00:41:44