2016-12-01 91 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