39

jupyter ノートブックで pandas を使用して分析を行っていますが、適用機能に時間がかかるため、プログレス バーを表示したいと考えています。この投稿を通じて、パンダ操作のシンプルな進行状況バーを提供するtqdmライブラリを見つけました。バー自体が時間の経過とともに変化する、非常に優れた進行状況バーを提供するJupyter 統合もあります。

ただし、2つを組み合わせたいのですが、その方法がわかりません。ドキュメントと同じ例を見てみましょう

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!"))

動作するはずですが、バーに進行状況が正しく表示されず、まだ追加の出力があります。

他のアイデアはありますか?

4

4 に答える 4

17

以下を使用できます。

tqdm_notebook().pandas(*args, **kwargs)

これは、tqdm_notebook に遅延アダプターがあるためです。そのため、そのメソッド (クラス メソッドを含む) にアクセスする前にインスタンス化する必要があります。

将来 (>v5.1)、より統一された API を使用できるようになるはずです。

tqdm_pandas(tqdm_notebook, *args, **kwargs)
于 2016-12-29T13:44:20.560 に答える