Colabでpandas_proflingを使うとエラー

Colab(Google Colaboratory)デビューしたがいきなり躓いた話。
タイトル通り、pandas_profling使用時にエラーになった。
原因はColabにデフォルトでインストールされてたpandas_proflingのバージョンが古かっただけ。

2021年6月16日の話。
Colabのpythonのバージョンは3.7.10。

エラー内容

以下を実行。

import pandas as pd
import pandas_profiling as pdp

df_train = pd.read_csv('data/raw/train.csv', index_col=0)
pdp.ProfileReport(df_train)

すると、「TypeError: concat() got an unexpected keyword argument ‘join_axes’」が。。

以下のissueにも上がってたが、’join_axes’はpandas1.0+では非推奨だからとのこと。
https://github.com/pandas-profiling/pandas-profiling/issues/401
pandasのバージョンを下げるか、pandas_proflingのバージョンを上げるかが解決策。

pip list で確認すると、Colab内のpandas、pandas_profilingのバージョンは以下だった。

pandas                        1.1.5
pandas-profiling              3.0.0

pandas_profilingのバージョンを上げることにした。

解決

pipでpandas_profilingをアップデート。

!pip install -U pandas_profiling

注意:アップデートする前にpandas_profilingをimportしていたら、以下のWaringが出るのでランタイムを再起動する。

Successfully installed PyYAML-5.4.1 htmlmin-0.1.12 imagehash-4.2.0 multimethod-1.4 pandas-profiling-3.0.0 phik-0.11.2 pydantic-1.8.2 requests-2.25.1 tangled-up-in-unicode-0.1.0 tqdm-4.61.1 visions-0.7.1
WARNING: The following packages were previously imported in this runtime:
  [pandas_profiling]
You must restart the runtime in order to use newly installed versions.

pip listでアップデートされたことを確認する。

pandas                        1.1.5
pandas-profiling              3.0.0

再度、ProfileReportを実行して、正常に出力されることを確認。

おしまい