2023/06/25
最近、休日も多忙でブログの更新ができていませんでした・・。(1ヶ月間の更新なしでブログに広告が出る手前ですね・・)。
さて、ChatGPTのような「生成AIブーム」ですが、PandasにChatGPTの機能を実装した
PandasAIというライブラリを見つけましたので、早速味見をしました。
題材はGithub内にある
サンプルを参考に実行しました。ドキュメントは別の
サイトにあります。
実行したコードは以下の通りです。実行する上での条件は、OpenAIのAPIの有償アカウントを持っていることと、Pythonのバージョンは3.9以上でした。

10カ国のGDPと幸福度のデータをDataFrameとして読み込んでいます。

PandasAIへのPromptは、22、24、26、28行目に記載しています。DataFrame dfとPromptを引数にした簡単な関数コールです。
1つ目(22行目)の「幸福度の高いTop5はどこですか?」という質問に対する回答は以下の通り。

合っていますね。Pandas単体でも同じ結果を求めるコードは書けますが、Promptで書くと、直感的に分かりやすいですね。
2つ目(24行目)の「GDPの高いTop5はどこですか?」という質問の回答は、

で、これもOKです。
3つ目(26行目)の「各国のGDPを棒の色を変えてヒストグラム化しなさい。」という指示です。

確かに指示通りのグラフまで作成してくれ、グラフの細かい設定をmatplotlib等でしなくても良い所が楽ですね。このグラフは見た目で、GDPの順位が分かりにくいので、降順に並べてもらう指示を4つ目(28行目)で行いました。結果は以下の通りでした。

いい感じです。項目名で文字が切れてしまっている所もありますが、Promptで細かく指示をすれば解決できそうな気もします・・。
PandasAIについて、まだ、どの程度のことができるか分からないので、次回はデータ分析の前処理の際によく実施する欠損データの補完を試してみようと思います。