Python Pandas是一個為Python編程提供數(shù)據(jù)操作和分析功能的開源工具包。這個庫已經(jīng)成為數(shù)據(jù)科學(xué)家和分析師的必備工具。它提供了一種有效的方法來管理結(jié)構(gòu)化數(shù)據(jù)(Series和DataFrame)。
在人工智能領(lǐng)域,Pandas經(jīng)常用于機器學(xué)習(xí)和深度學(xué)習(xí)過程的預(yù)處理步驟。Pandas通過提供數(shù)據(jù)清理、重塑、合并和聚合,可以將原始數(shù)據(jù)集轉(zhuǎn)換為結(jié)構(gòu)化的、隨時可用的2維表格,并將其輸入人工智能算法。
?項目地址:https://github.com/gventuri/pandas-ai
使用 pip 安裝 Pandas AI
pip install pandasai
使用 OpenAI 導(dǎo)入 PandasAI
在下一步中,我們將導(dǎo)入之前安裝的 pandasai 庫,然后導(dǎo)入 LLM(大型語言模型)功能。截至 2023 年 5 月,pandasai 僅支持 OpenAI 模型,我們將使用它來理解數(shù)據(jù)。
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文件,我們還可以連接關(guān)系型的數(shù)據(jù)庫,例如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)
當(dāng)然,你也可以讓 PandasAI 進行更復(fù)雜的查詢。例如,可以要求 PandasAI 求出 2 個最不幸福國家的 GDP 總和:
pandas_ai.run(df, prompt='What is the sum of the GDPs of the 2 unhappiest countries?')
上面的代碼將返回以下內(nèi)容:
19012600725504
也可以請 PandasAI 畫圖:
pandas_ai.run(
df,
"Plot the histogram of countries showing for each the gpd, using different colors for each bar",
)
?最后
ChatGPT、Pandas是強大的工具,當(dāng)它們結(jié)合在一起時,可以徹底改變我們與數(shù)據(jù)交互和分析的方式。ChatGPT憑借其先進的自然語言處理能力,可以更直觀地與數(shù)據(jù)進行類似人類的交互。而PandasAI可以增強Pandas數(shù)據(jù)分析體驗。通過將復(fù)雜的數(shù)據(jù)操作任務(wù)轉(zhuǎn)換為簡單的自然語言查詢,PandasAI使用戶更容易從數(shù)據(jù)中提取有價值的見解,而無需編寫大量代碼。文章來源:http://www.zghlxwxcb.cn/news/detail-521426.html
這對于那些還不熟悉Python或pandas操作/轉(zhuǎn)換的人來說是一種編程的新方法。我們不需要為你想要執(zhí)行的任務(wù)編程,而是只是與AI代理交談,明確的額告訴它想要的結(jié)果,代理會將此消息轉(zhuǎn)換為計算機可解釋的代碼,并返回結(jié)果。文章來源地址http://www.zghlxwxcb.cn/news/detail-521426.html
到了這里,關(guān)于Pandas+ChatGPT超強組合pandas-ai:交互式數(shù)據(jù)分析和處理新方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!