我尝试使用多处理池替换数据帧的行。
当我运行以下代码时,多处理似乎将输出保留在某处,但不会像我预期的那样替换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")