AI PandasAI 入門到精通:讓數(shù)據(jù)會說話的智能分析神器
AI PandasAI 入門到精通:讓數(shù)據(jù)會說話的智能分析神器
1. 什么是PandasAI?
PandasAI 是一個開源的Python庫,它為廣受歡迎的數(shù)據(jù)分析和操作工具Pandas添加了生成式人工智能(Generative AI)功能。簡單來說,它是一個能讓您的數(shù)據(jù)“會說話”的智能分析助手。
根據(jù)其官網介紹,PandasAI旨在成為開發(fā)AI應用的工具,讓開發(fā)者能夠快速構建和部署通用AI代理(General AI agents)。其核心目標是讓非技術用戶也能通過自然語言與他們的數(shù)據(jù)進行交互,從而輕松地獲取數(shù)據(jù)洞察。
核心特性
- 對話式數(shù)據(jù)分析:您可以直接用自然語言(如中文或英文)向您的數(shù)據(jù)提問,例如:“2023年哪個地區(qū)的平均收入最高?” PandasAI會理解您的問題,并自動執(zhí)行相應的數(shù)據(jù)操作來給出答案。
- 增強的分析能力:能夠整合來自多個數(shù)據(jù)源(如SQL、CSV、Excel、數(shù)據(jù)庫等)的數(shù)據(jù),并在一個地方進行綜合分析。
- 隱私優(yōu)先:您的數(shù)據(jù)永遠不會離開您的基礎設施。您可以在本地或私有云中運行PandasAI,對敏感信息擁有完全的控制權。
- 快速集成:可以輕松地與您現(xiàn)有的技術棧集成,支持多種數(shù)據(jù)源和大型語言模型(LLM)。
2. 快速上手 (Quickstart)
要開始使用PandasAI,您需要一個大型語言模型(LLM)。以下步驟基于使用OpenAI的模型(需要API密鑰)。
安裝
首先,通過pip安裝PandasAI庫:
pip install "pandasai>=3.0.0b2"
配置LLM
接下來,安裝LiteLLM擴展并配置您的LLM(以OpenAI為例):
# 安裝擴展
pip install pandasai-litellm
# 配置代碼
import pandasai as pai
from pandasai_litellm.litellm import LiteLLM
# 初始化LiteLLM,填入您的模型和API密鑰
llm = LiteLLM(
model="gpt-4.1-mini",
api_key="YOUR_OPENAI_API_KEY" # 請?zhí)鎿Q為您自己的API密鑰
)
# 將LLM配置給PandasAI
pai.config.set({"llm": llm})
與您的數(shù)據(jù)對話
配置好LLM后,您就可以開始與數(shù)據(jù)對話了:
import pandasai as pai
from pandasai_litellm.litellm import LiteLLM
# 初始化LLM (代碼同上)
llm = LiteLLM(model="gpt-4.1-mini", api_key="YOUR_OPENAI_API_KEY")
pai.config.set({"llm": llm})
# 加載您的數(shù)據(jù)
df = pai.read_csv("data/companies.csv")
# 用自然語言提問
response = df.chat("What is the average revenue by region?")
print(response)
當您提問時,PandasAI會利用LLM生成答案,并以不同的形式返回結果,例如:
- 字符串 (String)
- DataFrame (表格數(shù)據(jù))
- 圖表 (Chart)
- 數(shù)字 (Number)
3. 創(chuàng)建您的第一個數(shù)據(jù)層
PandasAI不僅限于單個文件,它還允許您創(chuàng)建一個“數(shù)據(jù)層”來管理多個數(shù)據(jù)集。
1. 定義數(shù)據(jù)源
首先,創(chuàng)建一個數(shù)據(jù)模式(schema)來描述您的數(shù)據(jù)集:
import pandasai as pai
# 加載數(shù)據(jù)
df = pai.read_csv("data/companies.csv")
# 創(chuàng)建數(shù)據(jù)層
dataset = pai.create(
path="my-org/companies",
df=df,
description="Customer companies dataset"
)
2. 定義數(shù)據(jù)結構
為了更好地控制,您可以顯式地定義列的模式(schema):
# 定義帶有顯式模式的公司數(shù)據(jù)集
dataset = pai.create(
path="my-org/companies",
df=df,
description="Customer companies dataset",
columns=[
{"name": "company_name", "type": "string", "description": "The name of the company"},
{"name": "revenue", "type": "float", "description": "The revenue of the company"},
{"name": "region", "type": "string", "description": "The region of the company"}
]
)
3. 加載和查詢數(shù)據(jù)
一旦定義好,您就可以輕松加載和查詢這些數(shù)據(jù)集:
# 加載已有的數(shù)據(jù)集
stocks = pai.load("organization/coca_cola_stock")
companies = pai.load("organization/companies")
# 用自然語言查詢
response = stocks.chat("What is the volatility of the Coca Cola stock?")
result = pai.chat("Compare the revenue between Coca Cola and Apple", stocks, companies)
4. 總結與展望
PandasAI為數(shù)據(jù)分析師和開發(fā)者提供了一種革命性的工作方式。它將復雜的編程任務簡化為自然語言對話,極大地降低了數(shù)據(jù)分析的門檻。
通過本文的介紹,您已經了解了PandasAI的核心概念、基本用法以及如何構建一個簡單的數(shù)據(jù)分析流程。隨著AI技術的不斷發(fā)展,像PandasAI這樣的工具將越來越普及,讓每個人都能成為數(shù)據(jù)的主人。


浙公網安備 33010602011771號