Pandas AI与ChatGPT强强联合,导入LLM大语言模型,一炮而红!
在人工智能领域,Panda常用于机器学习和深度学习过程的预处理步骤。通过提供数据清理、重塑、连接和聚合,Pandas 可以将原始数据集转换为结构化的、随时可用的二维表,这些表可以输入到人工智能算法中。
项目地址:https://github.com/gventuri/pandas-ai
使用pip安装Pandas AI
pip install pandasai
使用OpenAI导入PandasAI
下一步我们将之前安装的导入pandasai库,然后导入LLM函数(大语言模型)。从2023年5月开始,pandasai将仅支持OpenAI模型,该模型将用于理解数据。
import pandas as pd
from pandasai import PandasAI
# Sample DataFrame
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]
})
# Instantiate a LLM
from pandasai.llm.openai import OpenAI
llm = OpenAI(api_token="your_API_key")
pandas_ai = PandasAI(llm)
pandas_ai.run(df, prompt='Which are the 5 happiest countries?')
6 Canada
7 Australia
1 United Kingdom
3 Germany
0 United States
Name: country, dtype: object
要使用 OpenAI API,您需要创建自己唯一的 API 密钥。
因为pandas的特性,我们不仅可以处理csv文件,还可以连接关系型数据库,比如pgsql:
# creating the uri and connecting to database
pg_conn = "postgresql://YOUR URI HERE"
#Query sql database
query = """
SELECT *
FROM table_name
"""
#Create dataframe named df
df = pd.read_sql(query,pg_conn)
那么就像上面的代码,我们可以直接说:
# Using pandas-ai!
pandas_ai = PandasAI(llm)
pandas_ai.run(df, prompt='Place your prompt here)
当然,您还可以请求 PandasAI 执行更复杂的查询。例如,您可以要求 PandasAI 找到 2 个最不幸福国家的 GDP 总和:
pandas_ai.run(df, prompt='What is the sum of the GDPs of the 2 unhappiest countries?')
上面的代码将产生以下结果:
19012600725504
您还可以要求 PandasAI 画一幅画:
pandas_ai.run(
df,
"Plot the histogram of countries showing for each the gpd, using different colors for each bar",
)

最后
ChatGPT、Panda 都是强大的工具,结合起来可以彻底改变我们交互和分析数据的方式。凭借先进的自然语言处理功能,ChatGPT 可以实现更直观的类人数据交互。 PandasAI 可以增强您的 Pandas 数据分析体验。通过将复杂的数据操作任务转化为简单的自然语言查询,PandasAI 使用户可以轻松地从数据中提取有价值的见解,而无需编写大量代码。
对于那些还不了解 Python 或 pandas 操作/转换的人来说,这是一种新的编程方法。您无需对您想要执行的任务进行编程,只需与人工智能代理交谈并准确地告诉它您想要什么结果,然后代理将此消息转换为计算机可以解释并生成该结果的代码。
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。