Posted at

pandas_bokeh のインポート時に ImportError: cannot import name 'cumsum'

こちらの記事→まだBokehで消耗してるの?これからはPandas-Bokehを使おうぜ | Wizard In The Marketに煽られて、pandas-bokeh を使ってみることにしました。

無事描画はできたのですが、途中引っかかったエラーをシェアします。


install

$ pip install pandas_bokeh


Error その1 ImportError: cannot import name 'cumsum'

インストールじたいは、問題なく済んだのですが、 import pandas_bokeh すると


ImportError Traceback (most recent call last)
<ipython-input-1-02eea91c5ad7> in <module>()
----> 1 import pandas_bokeh

/home/common/app/anaconda3/envs/py36/lib/python3.6/site-packages/pandas_bokeh/__init__.py in <module>()
3
4 from .base import output_notebook, output_file, plot_grid, embedded_html
----> 5 from .plot import plot, show, FramePlotMethods
6 from .geoplot import geoplot
7

/home/common/app/anaconda3/envs/py36/lib/python3.6/site-packages/pandas_bokeh/plot.py in <module>()
25 from bokeh.palettes import all_palettes, Inferno256
26 from bokeh.models.ranges import FactorRange
---> 27 from bokeh.transform import dodge, cumsum
28 from bokeh.core.properties import value as _value
29 from bokeh.models.glyphs import Text

ImportError: cannot import name 'cumsum'

ググってもわからなかったので、bokeh を更新してみました。

conda install bokeh

これでもう一度 import してみたら、今度は違うエラーが発生しました。


Error その2 ModuleNotFoundError: No module named 'pandas.plotting'


ModuleNotFoundError Traceback (most recent call last)
<ipython-input-1-02eea91c5ad7> in <module>()
----> 1 import pandas_bokeh

/home/common/app/anaconda3/envs/py36/lib/python3.6/site-packages/pandas_bokeh/__init__.py in <module>()
3
4 from .base import output_notebook, output_file, plot_grid, embedded_html
----> 5 from .plot import plot, show, FramePlotMethods
6 from .geoplot import geoplot
7

/home/common/app/anaconda3/envs/py36/lib/python3.6/site-packages/pandas_bokeh/plot.py in <module>()
31 from bokeh.events import Tap
32
---> 33 from pandas.plotting._core import BasePlotMethods
34
35 from .base import embedded_html

ModuleNotFoundError: No module named 'pandas.plotting'

もしかして pandas 古いのかも?とおもって

conda update pandas

をして、 import してみたら、今度はできました!\(^o^)/