使用多处理池替换数据帧

时间:2017-10-03 21:11:30

标签: python python-3.x pandas multiprocessing python-multiprocessing

我尝试使用多处理池替换数据帧的行。

当我运行以下代码时,多处理似乎将输出保留在某处,但不会像我预期的那样替换new_df。有什么方法可以纠正这个吗?

df = pd.read_excel("data.xlsx")
size = (len(df)*3, len(df.iloc[0]))
new_df = np.zeros(size)
new_df = pd.DataFrame(new_df)
i = range(len(df))

def work(j):    
    new_df.iloc[j*3,:] = np.array(df.iloc[j,:])


cpuCount = multiprocessing.cpu_count()    
if __name__ == "__main__":

    pool = Pool(processes=cpuCount)
    pool.map(work, i)
    pool.close()

new_df.to_csv("result.csv")

0 个答案:

没有答案