关于这个问题有一些疑问,但似乎找不到一个在非可迭代函数上执行进度条的方法。下面是一个合并两个不同数据框的函数。我希望将此函数插入到另一个显示进度的函数中。
from multiprocessing import Pool
import tqdm
import pandas as pd
import numpy as np
df1 = pd.DataFrame(np.random.randint(0,100,size=(100000, 4)), columns=list('ABCD'))
df2 = pd.DataFrame(np.random.randint(0,100,size=(100000, 4)), columns=list('AXYZ'))
def merge_df(df1, df2):
df = pd.merge(left = df1, right = df2, how = 'left',
left_on = 'A', right_on = 'A')
return df
if __name__ == '__main__':
with Pool(2) as p:
r = list(tqdm.tqdm(p.imap(merge_df, df1, df2)))
数值错误:DataFrame的真实值是模糊的。请使用a.empty、a.bool()、a.item()、a.any()或a.all()。