2013-04-15 22 views
0

我從ff或ffbase包運行了read.csv.ffdf。但它卡住了以下消息read.csv.ffdf使用ff和ffbase包卡在R中

read.table.ffdf 1..1000 (1000) csv-read=0.15sec ffdf-write=1.24sec 
read.table.ffdf 1001..63015 (62015) csv-read=9.89sec ffdf-write=8.84sec 
read.table.ffdf 63016..125030 (62015) csv-read=8.18sec ffdf-write=6.74sec 
read.table.ffdf 125031..187045 (62015) csv-read=8.15sec ffdf-write=6.72sec 
read.table.ffdf 187046..249060 (62015) csv-read=8.19sec ffdf-write=6.72sec 
read.table.ffdf 249061..311075 (62015) csv-read=8.05sec ffdf-write=7.13sec 
read.table.ffdf 311076..373090 (62015) csv-read=8.26sec ffdf-write=6.73sec 
read.table.ffdf 373091..435105 (62015) csv-read=8.26sec ffdf-write=6.8sec 

該文件包含大約80萬行,但爲什麼它停止在這裏,我不能運行從這時開始什麼?

回答

2

您是否使用了read.csv.ffdf的transFUN參數?如果是,請確保您從transFUN返回的行數與輸入transFUN的data.frame的行數相同。

說明: 導入read.csv.ffdf會在塊返回較少記錄時停止,然後next.rows參數停止,因此如果您在transFUN中進行子集化,它將停止。 transFUN用於添加派生字段或清理數據,而不是子集。

+0

謝謝。但我根本不使用transFUN。我只使用指定列類型的參數。 read.csv.ffdf可以處理空值嗎? – xiaodai

+0

你的數據集可能是畸形的嗎?它是否具有非常數的分隔符值? – Zelazny7

+0

如果您不使用transFUN,您的數據集必須格式不正確。查看從第435106行到第62015行的數據集,看看您的csv文件看起來不像預期的那樣。 – jwijffels