赞
踩
- import pandas as pd
- from tqdm import tqdm
- import multiprocessing as mp
-
- with mp.Pool(mp.cpu_count()) as pool:
- data['Temp_Target'] = tqdm(pool.imap(en_token, data['Target']),total = len(data['Target']),desc = "处理进度")
使用多线程使用en_token 方法对data["Target"]处理,得到的结果赋值给data['Temp_Target']。
参数说明:
1.mp.cpu_count()是获得cpu核数,并将最大线程池的数量指定为cpu的核数。
2.Pool(9)是指的要开启9个进程
3.Pool.imap()和tqdm相搭配,接收2个参数,第一个参数是要执行的函数,第二个参数代表被执行数据。
4.tqdm中接受3个参数,第一个参数是pool.imap(),第二个参数total代表的是被执行数据的总条目,第三个参数desc是对进度条的描述。
- from pandarallel import pandarallel
- # Initialization
- pandarallel.initialize(progress_bar=True)
- # Parallel apply
- data["Temp_Target"] = data["Target"].parallel_apply(en_token)
使用多线程使用en_token 方法对data["Target"]处理,得到的结果赋值给data['Temp_Target']。其中使用 progress_bar=True 会输出进度条来获得每个核的处理进度。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。