Loading [MathJax]/jax/output/CommonHTML/config.js
部署DeepSeek模型,进群交流最in玩法!
立即加群
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >PandasAI:让数据分析变得会话化的强大工具

PandasAI:让数据分析变得会话化的强大工具

作者头像
CoderJia
发布于 2025-05-06 05:11:34
发布于 2025-05-06 05:11:34
35503
代码可运行
举报
运行总次数:3
代码可运行

引言

在当今数据驱动的世界中,数据分析工具的效率和易用性变得尤为重要。传统的数据分析方法往往需要专业的编程知识和对特定库语法的熟悉,这对非技术用户构成了障碍。PandasAI 应运而生,它将自然语言处理与数据分析完美结合,使得与数据的交互变得像日常对话一样简单。本文将深入探讨这个由 Sinaptik AI 团队开发的开源项目,分析其核心功能、技术原理及实际应用价值,帮助读者了解如何利用 PandasAI 提升数据分析效率。

pandas-ai-log
pandas-ai-log

项目概述分析

PandasAI 是一个基于 Python 的开源平台,旨在通过自然语言处理技术使数据分析变得更加直观和会话化。截至目前,该项目在 GitHub 上已获得约 19.9K 的 Star 和 1.9K 的 Fork,显示出其在开发者社区中的受欢迎程度。

基本信息

项目主页
项目主页

PandasAI 的架构设计围绕着将用户的自然语言查询转换为对数据的操作。该项目最新的稳定版本为 v2.4.2(v3.0.0还处于Beta 版本),项目团队正在持续更新和改进功能。项目的核心理念是让数据分析变得会话化,让无论是技术还是非技术用户都能以自然语言与数据进行交互。

核心功能详解

1. 自然语言查询处理

PandasAI 的核心优势在于它能够理解并执行自然语言形式的数据查询。用户只需用日常语言提出问题,如"哪些国家的销售额最高?"或"计算前三名国家的总销售额",PandasAI 便能解析这些指令,将其转换为相应的数据操作,并返回结果。

这一功能背后是先进的 LLM 技术。PandasAI 默认使用 BambooLLM(由 PandasAI 团队开发的专为数据分析设计的语言模型),但也支持集成其他大语言模型。系统能够理解复杂的查询意图,进行上下文推理,并生成精确的 Python 代码来执行相应操作。

代码语言:javascript
代码运行次数:1
运行
AI代码解释
复制
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]
})

# 设置 API 密钥
pai.api_key.set("your-pai-api-key")

# 提问
df.chat('Which are the top 5 countries by sales?')
# 输出: 
#          country  revenue
#0           China     7000
#1   United States     5000
#2           Japan     4500
#3         Germany     4100
#4  United Kingdom     3200

# 提出更复杂的问题
df.chat("What is the total sales for the top 3 countries by sales?")
# 输出: The total sales for the top 3 countries by sales is 16500.

2. 数据可视化生成

除了文本形式的回答,PandasAI 还能根据自然语言指令生成数据可视化图表。用户只需描述所需的图表类型和要展示的数据,PandasAI 便会自动生成相应的可视化结果。这一功能大大简化了数据可视化过程,让用户无需编写复杂的绘图代码。

代码语言:javascript
代码运行次数:2
运行
AI代码解释
复制
# 生成可视化图表
df.chat(
    "Plot the histogram of countries showing for each one the revenue. Use different colors for each bar",
)
# 系统会生成一个彩色柱状图,展示各国收入情况

3. 多数据源集成分析

PandasAI 支持同时分析多个数据帧,并能够理解它们之间的关系。这使得用户可以提出跨数据集的复杂问题,而无需手动执行数据合并或关联操作。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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)

# 跨数据集查询
pai.chat("Who gets paid the most?", employees_df, salaries_df)
# 输出: Olivia gets paid the most.

4. 安全沙箱执行

考虑到数据安全问题,PandasAI 提供了 Docker 沙箱执行环境,可以在隔离的环境中安全地执行代码,有效防止恶意代码攻击。这一功能特别适合企业环境或需要处理敏感数据的场景。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandasai as pai
from pandasai_docker import DockerSandbox

# 初始化沙箱
sandbox = DockerSandbox()
sandbox.start()

# 使用沙箱执行查询
pai.chat("Who gets paid the most?", employees_df, salaries_df, sandbox=sandbox)

# 使用完毕后停止沙箱
sandbox.stop()

5. 云平台协作功能

PandasAI 提供了云平台功能,支持团队协作分析数据。用户可以将数据集上传到平台,团队成员可以通过自然语言查询访问这些数据,这大大促进了数据分析的民主化和团队协作效率。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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()

安装和使用教程

1.环境要求

  • Python 版本:3.8+ <3.12
  • 依赖库:pandas、相关 LLM 和 NLP 库

2.安装步骤

PandasAI 可以通过 pip 或 poetry 进行安装:

使用 pip:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 注意可能与matplotlib不兼容,可提前卸载
pip install "pandasai>=3.0.0b2"

使用 poetry:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
poetry add "pandasai>=3.0.0b2"

对于需要安全沙箱的用户,还需安装 Docker 包:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install "pandasai-docker"

3.基本使用方法

导入库并设置 API 密钥

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandasai as pai

# 设置 API 密钥(可在 https://app.pandabi.ai 注册获取)
pai.api_key.set("your-pai-api-key")

注册账号之后,每月有免费使用次数。

获取api-key
获取api-key

创建或加载数据

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 创建示例数据
df = pai.DataFrame({
    "name": ["John", "Mary", "Bob", "Alice"],
    "age": [25, 30, 35, 40],
    "salary": [50000, 60000, 70000, 80000]
})

# 或从文件加载数据
df = pai.read_csv("your_data.csv")

使用自然语言提问

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
result = df.chat("What is the average salary of people over 30?")
print(result)
What is the average salary of people over 30
What is the average salary of people over 30

生成可视化

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
df.chat("Create a bar chart showing the salary of each person")

可在 exports\charts\ 目录下查看生成的图表:

生成可视化
生成可视化

4.切换其他LLM

安装 Pandasai-litellm 扩展:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# Using poetry
poetry add pandasai-litellm

# Using pip
pip install pandasai-litellm

LiteLLM 支持但不限于以下 LLM,详情见https://docs.litellm.ai/docs/providers:

  • OpenAI (gpt-3.5-turbo, gpt-4, etc.)
  • Anthropic (claude-2, claude-instant-1, etc.)
  • Google (gemini-pro, palm2, etc.)
  • Azure OpenAI
  • AWS (Bedrock, SageMaker)
  • Mistral AI
  • Cohere
  • Hugging Face

只需要代码中添加几行代码设置 LLM 即可切换 deepseek 大模型:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import os
import pandasai as pai
from pandasai_litellm import LiteLLM

# Set your API keys as environment variables
os.environ["OPENAI_API_KEY"] = "your-openai-api-key"

# Example with deepseek
llm = LiteLLM(model="deepseek/deepseek-chat")

# Set your LLM configuration
pai.config.set({"llm": llm})
切换deepseek
切换deepseek

应用场景和实际价值

1.适用业务场景

  1. 数据探索和分析:研究人员和数据分析师可以更快地探索新数据集,通过自然语言提问深入了解数据特征。
  2. 业务报告生成:业务用户可以直接通过自然语言获取关键业务指标,无需掌握复杂的数据查询语言。
  3. 数据可视化:快速生成数据可视化图表,支持决策制定和数据展示。
  4. 团队协作分析:团队成员可以在同一数据集上进行协作分析,共享洞察。
  5. 教育场景:教育工作者可以使用 PandasAI 简化数据科学教学,让学生专注于数据分析思维而非复杂语法。

2.与类似项目的优势对比

相比传统的数据分析工具,PandasAI 具有以下优势:

  1. 降低技术门槛:用户无需掌握复杂的 Pandas 语法和数据操作方法,只需用自然语言表达分析需求。
  2. 提高效率:即使是专业数据分析师,也能通过自然语言快速执行复杂查询,节省编写代码的时间。
  3. 增强数据可访问性:使非技术背景的业务人员能够直接与数据交互,促进数据驱动决策。
  4. 安全性:提供沙箱执行环境,确保代码安全执行,防止恶意攻击。

3.实际应用价值效益

  1. 提高数据分析效率:通过自然语言查询,分析师可以将更多精力集中在数据解释和决策上,而非编写代码。
  2. 促进数据民主化:让更多非技术人员能够参与数据分析过程,打破数据孤岛。
  3. 加速洞察发现:快速生成可视化和统计分析,帮助用户更快地发现数据中的模式和趋势。
  4. 降低学习成本:减少学习专业数据分析语言的时间投入,加速技能获取。

4.局限性与注意事项

  1. 模型回答准确性:尽管 PandasAI 强大,但仍可能存在理解错误或生成不准确结果的情况,用户需要对关键结果进行验证。
  2. 复杂查询处理:对于极其复杂的数据查询,可能仍需要专业人员介入或手动编写代码。
  3. 依赖 API 密钥:默认使用 BambooLLM 需要 API 密钥,这可能对某些用户构成限制。
  4. 处理超大数据:在处理极大规模数据集时,可能面临性能挑战。

结论

PandasAI 代表了数据分析工具的重要发展方向——会话式数据分析。通过将先进的 LLM 技术与传统数据分析工具相结合,PandasAI 不仅提高了数据分析的效率,还显著降低了数据分析的技术门槛,让各行各业的用户都能轻松与数据对话。

在数据爆炸的时代,PandasAI 这类工具的价值在于它们能够帮助我们更民主、更高效地从数据中提取洞察。随着项目的不断发展和完善,我们可以期待 PandasAI 在未来为更多数据分析场景提供强大支持,进一步推动数据分析的民主化和智能化进程。

对于想要探索 PandasAI 的开发者和数据分析师,这是一个值得学习和关注的项目,它不仅可以提升工作效率,还能启发我们思考人工智能与数据分析结合的更多可能性。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-05-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
pandas-ai,通过AI与你的数据更轻松的交流
PandaAI 是一个 Python 平台,使用户能够以自然语言询问数据。这个项目可以让你通过自然语言与数据交互,尤其是对于数据分析的需求,更加方便!
大侠之运维
2025/03/14
3030
狂揽20.2k星!还在傻傻的写SQL吗,那你就完了!这款开源项目,让数据分析像聊天一样简单?再见吧SQL
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法
小华同学ai
2025/05/22
1120
狂揽20.2k星!还在傻傻的写SQL吗,那你就完了!这款开源项目,让数据分析像聊天一样简单?再见吧SQL
Pandas + ChatGPT 超强组合 pandas-ai :交互式数据分析和处理新方法
Python Pandas是一个为Python编程提供数据操作和分析功能的开源工具包。这个库已经成为数据科学家和分析师的必备工具。它提供了一种有效的方法来管理结构化数据(Series和DataFrame)。
Python数据科学
2023/08/29
2820
Pandas + ChatGPT 超强组合 pandas-ai :交互式数据分析和处理新方法
Pandas + ChatGPT 超强组合 pandas-ai :交互式数据分析和处理新方法!
GPT火了一段时间了,今天给大家介绍一个GPT和Pandas结合的库,实现的功能还挺有趣。顺便一提,文末送两本Pandas的好书~
张俊红
2023/08/08
4660
Pandas + ChatGPT 超强组合 pandas-ai :交互式数据分析和处理新方法!
交互式数据分析和处理新方法:pandas-ai =Pandas + ChatGPT
来源:DeepHub IMBA本文约1000字,建议阅读5分钟ChatGPT、Pandas是强大的工具,当它们结合在一起时,可以彻底改变我们与数据交互和分析的方式。 Python Pandas是一个为Python编程提供数据操作和分析功能的开源工具包。这个库已经成为数据科学家和分析师的必备工具。它提供了一种有效的方法来管理结构化数据(Series和DataFrame)。 在人工智能领域,Pandas经常用于机器学习和深度学习过程的预处理步骤。Pandas通过提供数据清理、重塑、合并和聚合,可以将原始数据集转
数据派THU
2023/05/18
5430
交互式数据分析和处理新方法:pandas-ai =Pandas + ChatGPT
PandasAI——让AI做数据分析
PandasAI是一款数据分析领域的ChatGPT应用,本文对原项目进行翻译旨在进行知识科普和梳理。这个项目的github地址为:https://github.com/gventuri/pandas-ai
山行AI
2023/06/14
1.6K0
PandasAI——让AI做数据分析
pandas-ai火了
关注小屋的朋友肯定都知道小编一直在坚持写pandas相关的文章,最近的一篇请参考:
皮大大
2023/05/09
5460
玩转 OCR|智能Excel数据分析助手
项目地址:Excel智能分析助手: 本项目旨在构建一个智能化的Excel数据分析助手,通过结合OCR技术和自然语言处理,实现从图片到数据分析的端到端解决方案。通过腾讯云的OCR技术,将图片中的数据转化为可分析的数字资产。在加上混元大模型的自然语言的解析能力与DuckDB 的高性能查询能力相结合,实现了自动化字段解析、数据类型推断与高效数据入库等功能。无论是对复杂数据的快速处理,还是多源数据的灵活支持,满足用户对实时性和准确性的需求。
刺头
2025/01/12
2230
玩转 OCR|智能Excel数据分析助手
NL2SQL进阶系列(3):Data-Copilot、Chat2DB、Vanna Text2SQL优化框架开源应用实践详解[Text2SQL]
NL2SQL基础系列(1):业界顶尖排行榜、权威测评数据集及LLM大模型(Spider vs BIRD)全面对比优劣分析[Text2SQL、Text2DSL]
汀丶人工智能
2024/04/16
3.2K0
NL2SQL进阶系列(3):Data-Copilot、Chat2DB、Vanna Text2SQL优化框架开源应用实践详解[Text2SQL]
PandasAI - AI增强的Pandas
Pandas AI 是一个 Python 库,它为流行的数据分析和操作工具 Pandas 添加了生成式AI能力。 PandasAI旨在与 Pandas 结合使用,而不是它的替代品。
用户1758543
2023/05/05
2.1K0
PandasAI - AI增强的Pandas
Python 数据分析与可视化:开启数据洞察之旅(5/10)
在当今数字化时代,数据就像一座蕴藏无限价值的宝藏,等待着我们去挖掘和探索。而 Python,作为数据科学领域的明星语言,凭借其丰富的库和强大的功能,成为了开启这座宝藏的关键钥匙,在数据分析和可视化领域占据着举足轻重的地位。
正在走向自律
2025/05/10
6160
Python 数据分析与可视化:开启数据洞察之旅(5/10)
AI 驱动的数据分析:Data Agent
数据曾被誉为新的石油,但这种说法正在演变。随着人工智能的兴起,算力已经成为企业推动创新和成功的关键资源。生成式人工智能所涉及到知识工作和创造性工作的领域 ,如果生成式人工智能可以让这些人至少提高 10% 的效率和 / 或创造力, 他们不仅变得更快、更有效率,而且比以前更有能力。因此,生成式人工智能具有创造数万亿美元经济价值的潜力。
半吊子全栈工匠
2025/03/17
1.4K0
AI 驱动的数据分析:Data Agent
使用腾讯云HAI + DeepSeek快速搭建智能数据分析工具
数据分析无处不在,已经成了企业决策、科研探索和业务优化的必备技能。传统的数据分析工具不仅需要一定的技术门槛,在处理大规模数据时效率低速度慢。
盒甜芋
2025/03/21
2210
Power BI Excel 调用DeepSeek进行数据分析
上文分享了如何在Power BI和Excel调用DeepSeek,使用AI导入数据或者处理数据,本文讲解如何借助DeepSeek进行数据分析。文章基于Excel讲解,Power BI操作步骤雷同。
wujunmin
2025/02/10
9680
Power BI Excel 调用DeepSeek进行数据分析
解密Prompt系列19. LLM Agent之数据分析领域的应用:Data-Copilot & InsightPilot
在之前的 LLM Agent+DB 的章节我们已经谈论过如何使用大模型接入数据库并获取数据,这一章我们聊聊大模型代理在数据分析领域的应用。数据分析主要是指在获取数据之后的数据清洗,数据处理,数据建模,数据洞察和数据可视化的步骤。可以为经常和数据打交道,但是并不需要太过艰深的数据分析能力的同学提供日常工作的支持,已看到很多 BI 平台在尝试类似的方案。这里我们聊两篇论文:Data-Copilot 和 InsightPilot, 主要参考一些有意思的思路~
风雨中的小七
2023/11/15
4.6K2
解密Prompt系列19. LLM Agent之数据分析领域的应用:Data-Copilot & InsightPilot
腾讯云TDSQL-C MySQL Serverless和HAI应用助力电商企业AI海报文案和“数据飞轮”分析方案最佳实践落地
近年来,随着深度学习、大数据、人工智能、AI等技术领域的不断发展,机器学习是目前最火热的人工智能分支之一,是使用大量数据训练计算机程序,以实现智能决策、语音识别、图像处理等任务,各种AI技术与产品层出不穷,怎么样结合自身公司业务打造一个AI智能平台呢?
用户10585271
2024/10/18
3090
腾讯云TDSQL-C MySQL Serverless和HAI应用助力电商企业AI海报文案和“数据飞轮”分析方案最佳实践落地
Meta AI研究员、英伟达工程师称赞的数据分析工具DataLab是什么
近日,腾讯大数据发布在arXiv的一篇学术论文《DataLab: A Unified Platform for LLM-Powered Business Intelligence》引起了各界同仁的广泛关注,前Meta AI研究员在推特和领英上分享该论文,同时又有领域大V相继转载,使得DataLab被推到了大数据领域的风口浪尖。
腾讯大数据
2025/02/05
8340
Meta AI研究员、英伟达工程师称赞的数据分析工具DataLab是什么
Pandas数据应用:电子商务数据分析
在当今数字化时代,电子商务已成为商业活动的重要组成部分。每天都有大量的交易数据产生,这些数据包含了丰富的信息,如用户行为、商品销售情况、库存变化等。如何有效地分析这些数据,从中提取有价值的信息,成为了电商企业提升竞争力的关键。Pandas 是一个强大的 Python 数据处理库,它提供了高效的数据结构和数据分析工具,特别适合用于处理结构化数据,如 CSV 文件、Excel 表格等。本文将从浅入深介绍如何使用 Pandas 进行电子商务数据分析,并探讨常见的问题及解决方案。
Jimaks
2024/12/31
4450
Python入门与数据分析
在数据科学领域,Python被广泛使用,因为它不仅易于学习,而且具有强大的数据分析库和工具。学习Python进行数据分析时,常常需要掌握数据清洗、分析和可视化等关键技能。本文将详细介绍Python入门与数据分析的基础知识,涵盖数据清洗、分析以及可视化的常用方法和技巧,并通过具体示例帮助理解。
LucianaiB
2025/01/13
1990
从Excel到高级工具:数据分析进阶指南
在数据分析的世界里,Excel曾经是众多人的第一站。它简单、直观、功能强大,从普通用户到专业人士,无不对其依赖。然而,随着数据规模增长、分析需求升级,Excel渐渐显得力不从心,于是Python、SQL、Pandas、Spark等高级工具成为数据分析师的得力助手。那么,从Excel到高级数据分析工具,我们究竟经历了怎样的跃迁?本文将从实际应用的角度,深入探讨这一进阶之路。
Echo_Wish
2025/05/05
1470
从Excel到高级工具:数据分析进阶指南
推荐阅读
相关推荐
pandas-ai,通过AI与你的数据更轻松的交流
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验