在循環(huán)時(shí)調(diào)用 tqdm 顯示進(jìn)度已經(jīng)是一個(gè)常規(guī)操作督惰,常見的方式是
for ii in tqdm(...):
...
while 循環(huán)的情況類似不傅,
while icnt in tqdm(range(n)):
...
icnt += 1
這里記錄沒有顯式循環(huán)時(shí),在 groupby 中的用法:
import pandas as pd
import numpy as np
from tqdm import tqdm
df = pd.DataFrame(np.random.randint(0, 100, (100000, 6)))
# 用 tqdm注冊(cè) pandas.progress_apply 和 pandas.Series.map_apply 兩個(gè)函數(shù)赏胚,下邊的 'my bar1' 可以換成其他說明文字访娶。
tqdm.pandas(desc="my bar!")
# 接下來可以用 progress_apply 代替原本的 dataframe.apply,用 progress_map 代替原本的 dataframe.map
df2 = df.iloc[:, 0].progress_apply(lambda x: x**2)
my bar!: 100%|██████████| 100000/100000 [00:00<00:00, 596835.61it/s]
或者在 groupby 中使用自定義函數(shù):
def calc_x(x):
return x ** 2
df2 = df.groupby(1).progress_apply(calc_x)
my bar!: 100%|██████████| 100/100 [00:00<00:00, 374.56it/s]