使用多处理池替换数据帧

2024-10-01 00:16:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用多处理中的池替换数据帧的行。你知道吗

当我运行下面的代码时,多重处理似乎将输出保留在某个地方,但并不像我预期的那样替换新的\u 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")

Tags: csv数据代码dfnewsizelen地方