PandasAI——让Python Pandas库学会说人话

377 阅读2分钟

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对象

charts

处理多个DataFrame