PandasAI——让Python Pandas库学会说人话
Github地址:github.com/gventuri/pa…
介绍
Pandas作为第三方开源的Python库,也是Python数据分析中的必备高级工具,从Numpy和Matplotlib的基础上构建而来,享有数据分析三剑客之一的盛名。
那么,PandasAI具体是做什么呢?
PandasAI并非是Pandas的替代品,而是将Pandas转换为聊天机器人。
通过使用OpenAI API key,用户可以以Pandas DataFrame的形式提出有关数据的问题,PandasAI会以自然语言、表格或者图表等形式进行回答(目前仅支持GPT模型,OpenAI API key需自备)
另外,作者是生活在德国的意大利人,所以数据保护措施做得非常到位!
Demo
可以在它的Github地址上找到具体的操作方法,这里只做一个演示。
首先通过pip安装Pandas库和PandasAI库(基于Pandas库使用):
pip install pandas
pip install pandasai
接着就可以调用这个库与Pandas进行对话了:
import pandas as pd
from pandasai import PandasAI
# 数据示例
df = pd.DataFrame({
"country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
"gdp": [19294482071552, 2891615567872, 2411255037952, 3435817336832, 1745433788416, 1181205135360, 1607402389504, 1490967855104, 4380756541440, 14631844184064],
"happiness_index": [6.94, 7.16, 6.66, 7.07, 6.38, 6.4, 7.23, 7.22, 5.87, 5.12]
})
# YOUR_API_TOKEN是OpenAI的API key, 调用OpenAI的接口进行对话
from pandasai.llm.openai import OpenAI
llm = OpenAI(api_token="YOUR_API_TOKEN")
pandas_ai = PandasAI(llm)
# df是数据, prompt是对话内容
print(pandas_ai(df, prompt='gdp排名前五的国家'))
调用pandas_ai()返回值是一个字符串或一个 pandas DataFrame 对象,
输出结果:
其它方面
PandasAI不仅能用于对话,还可以通过对话生成图表,以及能合并处理多个DataFrame对象。