見出し画像

コードの中で自然言語の命令が使えるPandasAIを使ってみた(コード付き)

コードの中に、自然言語で命令を入れるPandasAIというライブラリを使ってみました。今は、ChatGPTにより自然言語の取り扱いがブームですので、がちがちのコードの中に自然言語の命令を入れてみるのも面白いのかと思います。

ただ、がちがちのコードには、誰が指示しても同じ結果になるようになっていますが、自然言語を入れてしまうと期待する回答の範囲のバリエーションの幅が拡がり扱いにくい場合もあるのかなとは思いますが、今後議論が進んでいくのではないかと推測しています。


githubにPandasAIのページがあります。


今回は、上記githubにあるGoogle Colabのところを参考にしております。


今回利用したコードは以下です。

最初に必要ライブラリをインストールし、pandasライブラリを使用して、サンプル用のDataFrameを準備します。

!pip install pandasai
import pandas as pd
from pandasai import PandasAI
from pandasai.llm.openai import OpenAI
df = pd.DataFrame({
    "country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
    "gdp": [21400000, 2940000, 2830000, 3870000, 2160000, 1350000, 1780000, 1320000, 516000, 14000000],
    "happiness_index": [7.3, 7.2, 6.5, 7.0, 6.0, 6.3, 7.3, 7.3, 5.9, 5.0]
})

次に、Your API KEYに、OpenAIで取得したAPIキーを記載致します。

OPENAI_API_KEY = "YOUR API KEY"
llm = OpenAI(api_token=OPENAI_API_KEY)


さて、pandas_aiを使って、幸せな国と不幸な国を3つずつ挙げてもらいます。

pandas_ai = PandasAI(llm)
pandas_ai.run(df, prompt='Which are the 3 happiest countries? And Which are the 3 unhappiest countries?')

According to the data, the top 3 happiest countries are not mentioned. However, the bottom 3 unhappiest countries are Italy, Japan, and China.

下からアンハッピーな国は、イタリア、日本、中国だそうです。


次の質問としては、昇順で国ごとのGDPを色違いで表示してもらいます。

pandas_ai.run(df, "Plot the histogram of countries showing for each the gpd, using different colors for each bar, in ascending order.")



使ってみた感想としては、面白いかなと思います。ただ、普段Pythonプログラムを利用する人には良いです。また、ChatGPTのAPIとの連携などをしてみると面白いものが作れるのではないでしょうか。


いいなと思ったら応援しよう!