zzz
PandasAI 是一个 Python 平台,可以轻松地用自然语言向数据提问。它帮助非技术用户以更自然的方式与其数据交互,并帮助技术用户在处理数据时节省时间和精力。
服务介绍
PandasAI 是一个 Python 平台,它使用户能够以自然语言轻松地向数据提问。它帮助非技术用户以更自然的方式与数据交互,并帮助技术用户在处理数据时节省时间和精力。
🔧 快速开始
你可以在 这里 找到 PandasAI 的完整文档。
你可以选择在 Jupyter 笔记本、Streamlit 应用程序中使用 PandasAI,或者从仓库中使用客户端和服务器架构。
☁️ 使用平台
该库可以与我们强大的数据平台一起使用,只需几行代码即可实现端到端的对话数据分析。
加载你的数据,将其保存为数据框,并将其推送到平台上。
python
import pandasai as pai
pai.api_key.set("your-pai-api-key")
file = pai.read_csv("./filepath.csv")
dataset = pai.create(path="your-organization/dataset-name",
df=file,
name="dataset-name",
description="dataset-description")
dataset.push()
现在你的团队可以通过平台使用自然语言访问和查询这些数据。

📚 使用库
Python 要求
Python 版本 3.8+ <3.12
📦 安装
你可以使用 pip 或 poetry 安装 PandasAI 库。
使用 pip:
bash
pip install "pandasai>=3.0.0b2"
使用 poetry:
bash
poetry add "pandasai>=3.0.0b2"
💻 使用
提问
python
import pandasai as pai
示例 DataFrame
df = pai.DataFrame({
"country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", "Canada", "Australia", "Japan", "China"],
"revenue": [5000, 3200, 2900, 4100, 2300, 2100, 2500, 2600, 4500, 7000]
})
默认情况下,除非你选择不同的 LLM,否则它将使用 BambooLLM。
你可以在 https://app.pandabi.ai 注册获取免费 API 密钥(也可以在 .env 文件中配置)
pai.api_key.set("your-pai-api-key")
df.chat('销售额最高的前五个国家是哪些?')
中国, 美国, 日本, 德国, 澳大利亚
或者你可以提出更复杂的问题:
python
df.chat(
"销售额最高的前三个国家的总销售额是多少?"
)
销售额最高的前三个国家的总销售额是 16500。
可视化图表
你还可以要求 PandasAI 为你生成图表:
python
df.chat(
"绘制各国的直方图,显示每个国家的 gd。每个条形使用不同的颜色",
)

多个 DataFrame
你还可以将多个数据框传递给 PandasAI 并询问与它们相关的问题。
python
import pandasai as pai
employees_data = {
'EmployeeID': [1, 2, 3, 4, 5],
'Name': ['John', 'Emma', 'Liam', 'Olivia', 'William'],
'Department': ['HR', 'Sales', 'IT', 'Marketing', 'Finance']
}
salaries_data = {
'EmployeeID': [1, 2, 3, 4, 5],
'Salary': [5000, 6000, 4500, 7000, 5500]
}
employees_df = pai.DataFrame(employees_data)
salaries_df = pai.DataFrame(salaries_data)
默认情况下,除非你选择不同的 LLM,否则它将使用 BambooLLM。
你可以在 https://app.pandabi.ai 注册获取免费 API 密钥(也可以在 .env 文件中配置)
pai.api_key.set("your-pai-api-key")
pai.chat("谁的薪水最高?", employees_df, salaries_df)Olivia 的薪资最高。
Docker 沙箱
您可以在 Docker 沙箱中运行 PandasAI,提供一个安全、隔离的环境来安全地执行代码,并降低恶意攻击的风险。
Python 依赖
bash
pip install "pandasai-docker"
使用方法
python
import pandasai as pai
from pandasai_docker import DockerSandbox
初始化沙箱
sandbox = DockerSandbox()
sandbox.start()
employees_data = {
'EmployeeID': [1, 2, 3, 4, 5],
'Name': ['John', 'Emma', 'Liam', 'Olivia', 'William'],
'Department': ['HR', 'Sales', 'IT', 'Marketing', 'Finance']
}
salaries_data = {
'EmployeeID': [1, 2, 3, 4, 5],
'Salary': [5000, 6000, 4500, 7000, 5500]
}
employees_df = pai.DataFrame(employees_data)
salaries_df = pai.DataFrame(salaries_data)
默认情况下,除非您选择不同的 LLM,否则它将使用 BambooLLM。
您可以通过访问 https://app.pandabi.ai 注册以获取免费 API 密钥(您也可以在 .env 文件中进行配置)
pai.api_key.set("your-pai-api-key")
pai.chat("谁的薪资最高?", employees_df, salaries_df, sandbox=sandbox)
完成后不要忘记停止沙箱
sandbox.stop()
Olivia 的薪资最高。
您可以在 examples 目录中找到更多示例。
📜 许可证
PandasAI 在 MIT expat 许可下可用,除了此仓库中的 pandasai/ee 目录,该目录有其 自己的许可证。
如果您对托管的 PandasAI Cloud 或自托管的企业版感兴趣,请 联系我们。
资源
Beta 通知
v3 版本目前处于测试阶段。以下文档和示例反映了正在进行的功能和功能,在最终发布前可能会发生变化。
🤝 贡献
欢迎贡献!请查看未解决的问题并随时提交拉取请求。
更多信息,请参阅 贡献指南。
