2015-06-25 167 views
0

我正在写一个固定宽度的文件为CSV。由于该文件太大而无法一次读取,因此我正在以100000块的形式读取文件并追加到CSV。这工作正常,但是它增加了一个索引,尽管设置了index = False。熊猫to_csv指数=假不工作

如何在没有索引的情况下完成CSV文件?

infile = filename 
outfile = outfilename 
cols = [(0,10), (12,19), (22,29), (34,41), (44,52), (54,64), (72,80), (82,106), (116,144), (145,152), (161,169), (171,181)] 

for chunk in pd.read_fwf(path, colspecs = col_spec, index=False, chunksize=100000): 
chunk.to_csv(outfile,mode='a') 

谢谢!

回答

1

to_csv method有一个header参数,指示是否输出标题。在这种情况下,你可能做而不是想要这写不是第一次写入。

所以,你可以做这样的事情:

for i, chunk in enumerate(pd.read_fwf(...)): 
    first = i == 0 
    chunk.to_csv(outfile, header=first, mode='a') 
+0

谢谢,但我找到了答案,我的问题隐藏在起床,下班准备回家的作用。我应该把index = False放在chunk.to_csv(outfile,index = False,mode ='a')而不是read.fwf()中...... – user3867061

+0

@ user3867061很高兴你解决了它。 –