我正在使用jupyter笔记本中的pandas进行一些分析,由于我的应用函数需要很长时间,因此我想看到一个进度条。通过这篇文章here,我发现了tqdm库,它为pandas操作提供了一个简单的进度条。还有一个Jupyter集成,它提供了一个非常好的进度条,进度条本身会随着时间的推移而变化。
它甚至说“可以使用'tqdm_notebook'”,但我不知道如何使用。 我尝试了一些方法,比如:
但是它们不起作用。在定义中,对我来说看起来像是。
应该可以工作,但进度条没有正确显示进度,并且仍然有其他输出。还有其他的想法吗?
然而,我想将两者结合起来,但不太清楚如何实现。让我们只取文档中的同一个例子。
import pandas as pd
import numpy as np
from tqdm import tqdm
df = pd.DataFrame(np.random.randint(0, 100, (100000, 6)))
# Register `pandas.progress_apply` and `pandas.Series.map_apply` with `tqdm`
# (can use `tqdm_gui`, `tqdm_notebook`, optional kwargs, etc.)
tqdm.pandas(desc="my bar!")
# Now you can use `progress_apply` instead of `apply`
# and `progress_map` instead of `map`
df.progress_apply(lambda x: x**2)
# can also groupby:
# df.groupby(0).progress_apply(lambda x: x**2)
它甚至说“可以使用'tqdm_notebook'”,但我不知道如何使用。 我尝试了一些方法,比如:
tqdm_notebook(tqdm.pandas(desc="my bar!"))
或者
tqdm_notebook.pandas
但是它们不起作用。在定义中,对我来说看起来像是。
tqdm.pandas(tqdm_notebook(desc="my bar!"))
应该可以工作,但进度条没有正确显示进度,并且仍然有其他输出。还有其他的想法吗?
df.groupby(0).progress_apply(lambda x: x**2)
- Julien Marrec