读取pandas上的几个CSV文件执行操作并附加到csv文件多处理

时间:2016-08-17 21:40:56

标签: python pandas

我的以下代码读取一个文件夹中的几个csv文件,根据列中的值进行过滤,然后将生成的数据帧附加到csv文件。鉴于每个大约有410个文件,每个130 MB,此代码目前大约需要30分钟。我想知道是否有一种快速的方法可以让我使用多处理库更快。你能给我一些关于如何开始的提示吗?谢谢

import pandas as pd
import glob

path =r'C:\Users\\Documents\\'
allfiles = glob.glob(path + "*.csv")

with open('test.csv','w') as f:
    for i,file in enumerate(allfiles):
        df = pd.read_csv(file,index_col=None, header=0)
        df.sort_values(['A','B','C'], ascending = True, inplace = True)
        df['D'] = df.groupby(['A','B'])['C'].fillna(method = 'ffill')
        df[(df['D'] == 1) | (df['D'] == 0)].to_csv(f, header = False)

        print i
    print "Done"

0 个答案:

没有答案