2016-12-01 53 views
1

我想將一個巨大的數據文件分解成較小的部分。我使用以下腳本 -熊貓.DAT文件導入錯誤,跳過行

df = pd.read_csv(file_name, header=None,encoding='latin1',sep='\t',nrows=100000, skiprows = 100000) 

,但我看到跳過行參數跳過周圍20萬行,而不是100000誰能告訴我,爲什麼發生這種情況

+0

爲什麼不指定'CHUNKSIZE = 100000'將返回你的DF的一個切片,這樣你就可以再分割爲每塊中的DF? – EdChum

+0

實際文件是190 gb我無法一次將它全部讀入內存 – Uasthana

+0

您不需要用'chunksize'來讀取下一個chunksize行,然後就可以隨心所欲地執行任何操作塊 – EdChum

回答

1

感謝@EdChum我能解決使用CHUNKSIZE用下面的代碼的問題: -

i = 0 
tp = pd.read_csv(filename,header=None,encoding='latin1', sep='\t', iterator=True, chunksize=1000000) 
for c in tp: 
    ca = pd.DataFrame(c) 
    ca.to_csv (file_destination +str(i)+'test.csv', index = False, header = False) 
    i = i+1