如何修复Jupyter中pandas的tqdm progress_apply?

sor*_*tas 10 pandas ipython-notebook jupyter jupyter-notebook tqdm

真的不明白它是一个错误或者只是我的局部问题,仍然有一些问题与使用tqdm进度条progress_apply在Jupyter.

第一次尝试:

from tqdm import tqdm
tqdm_notebook.pandas(desc="Example Desc")
keywords_df['keyword'] = keywords_df['keywird'].progress_apply(lambda x: x.replace('*',''))
Run Code Online (Sandbox Code Playgroud)

输出(没有任何条形):

AttributeError: 'function' object has no attribute 'pandas'
Run Code Online (Sandbox Code Playgroud)

第二次尝试:

from tqdm import tqdm
tqdm_notebook().pandas(desc="Example Desc")
keywords_df['keyword'] = keywords_df['keywird'].progress_apply(lambda x: x.replace('*',''))
Run Code Online (Sandbox Code Playgroud)

输出: 两个条(需要一个).第一个栏是空的(0:[00:00,?it/s]),第二个是OK.

任何想法如何更改progress_apply描述和显示栏没有空的初始化栏?:)

PS 文档(https://github.com/tqdm/tqdm)说我可以使用tqdm_notebook,但它对我不起作用:)

# 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!")
Run Code Online (Sandbox Code Playgroud)

Onn*_*ard 14

现在你可以这样做:

from tqdm.notebook import tqdm
tqdm.pandas()

df.progress_apply(...)
Run Code Online (Sandbox Code Playgroud)

我的tqdm版本是4.39.0


sor*_*tas 11

来自tqdm开发者的回答:

笔记本支持仍处于(后期)测试阶段.当我们发布tqdm v5时,API可能会稍微改变,但现在你可能需要

from tqdm._tqdm_notebook import tqdm_notebook

tqdm_notebook.pandas(...
Run Code Online (Sandbox Code Playgroud)


小智 8

以下内容对我有用:

from tqdm import tqdm
tqdm.pandas()
keywords_df['keyword'] = keywords_df['keywird'].progress_apply(lambda x: x.replace('*',''))
Run Code Online (Sandbox Code Playgroud)


DJK*_*DJK 6

假设您的问题是关于如何使用状态栏,而Jupyter NoteBook上是关于状态栏的禁忌,那么您的代码应为

tqdm.pandas(desc="Example Desc")
keywords_df['keyword'] = keywords_df['keywird'].progress_apply(lambda x: x.replace('*',''))
Run Code Online (Sandbox Code Playgroud)


Nic*_*aro 6

这是我在jupyter笔记本中运行的内容,然后progress_apply可以运行:

from tqdm import tqdm, tqdm_notebook
tqdm_notebook().pandas()
Run Code Online (Sandbox Code Playgroud)

我在tqdm_notebook之后没有()时遇到错误