如何使用Python处理大文件(csv)

问题描述

我有一个csv文件,数据量较大,但我使用pandas的apply操作时,程序崩溃了,因此尝试采用分块的思想。

  • 问题解决办法参考链接
  • 程序代码
chunksize = 10000
c = 0
for chunk in pd.read_csv(fname, chunksize=chunksize,error_bad_lines=False):

    chunk['col1'] = chunk['col1'].apply(process1)
    chunk['col2'] = chunk['col2'].apply(process2)

    if c == 0:
        chunk.to_csv("result/result.csv", index=False)
    else:
        chunk.to_csv('result/result.csv', mode='a', header=False, index=False)

    if c%10==0:
        print(c)  
    c+=1
    

你可能感兴趣的:(python,开发语言)