利用PandasAI在數據分析中應用生成式AI

是否曾希望你的數據能自行分析?現在我們離那一天又近了一步。PandasAI是一個革命性的工具,極大地簡化了數據分析流程。這個Python庫在流行的Pandas庫基礎上,借助生成式AI擴展了功能,使得自動化且精細的數據分析成為現實。

通過應用如OpenAI的GPT-3.5這樣的生成模型,PandasAI能夠理解並回應類似人類的查詢,執行複雜的數據操作,並生成視覺化表示。數據分析與AI的結合,為企業和研究人員開闢了新的洞察途徑。

本教程將探討如何使用這個強大的庫進行各種任務。讓我們開始吧!

設置PandasAI

要設置PandasAI,我們需要使用pip安裝PandasAI,如下所示:

pip install pandasai

要與OpenAI的模型互動,你需要一個API密鑰。如果你沒有OpenAI API密鑰,可以在OpenAI平台上註冊帳戶並在那裡生成你的API密鑰。以下代碼有助於初始化一個帶有OpenAI的PandasAI實例:

Python

import pandas as pd
from pandasai import PandasAI
from pandasai.llm.openai import OpenAI

# 在Open AI環境中儲存API Token
# 將"YOUR_API_KEY"替換為您生成的API密鑰
llm = OpenAI(api_token='YOUR_API_KEY')

# 初始化一個使用OpenAI環境的Pandas AI實例
pandas_ai = PandasAI(llm, verbose=True, conversational=False)

生成式AI:簡要概述

生成式AI是人工智能的一個子集,它能夠創建與現有數據集相似的新數據。與根據給定數據進行分類或預測的判別模型不同,生成模型能夠產生新內容。生成式AI可應用於文本、圖像及複雜數據結構。

在數據分析中,生成式AI能夠合成用於訓練模型的逼真數據集、填補缺失數據點,甚至協助生成分析報告。其理解並模仿數據模式的能力使其成為一個強大的引擎。

PandasAI如何利用生成式AI進行數據清洗

PandasAI利用生成式AI自動化和增強數據清洗過程。您無需手動識別和修復錯誤,而是可以使用自然語言提示來指導AI清洗您的數據。

例如,您可以要求它”移除重複項”或”填補缺失值”,AI引擎將生成一個清洗後的數據集,節省您寶貴的時間和精力。

讓我們創建一個包含一些缺失值的數據框:

Python

df = pd.DataFrame({
"country": ["United States", "United Kingdom", "France", "Germany", "Italy", "Spain", None, "Australia", "Japan", "China"],
"gdp": [19294482071552, 2891615567872, 2411255037952, None, 1745433788416, 1181205135360, 1607402389504, 1490967855104, 4380756541440, 14631844184064],
"happiness_index": [None, 7.16, 6.66, 7.07, 6.38, 6.4, 7.23, 7.22, 5.87, 5.12]
})

Now, we can prompt to get clean preprocessed data with the following code:

Python

response = pandas_ai.run(df, "Preprocess this dataframe for me")
print(response)

The output is shown below. You can see that the data has been cleaned.

借助生成式AI進行特徵工程

手動在數據集中創建新特徵可能是一項繁瑣的任務。您可以指示AI引擎根據現有數據列生成新特徵。

例如,透過以下程式碼片段,您可以輕鬆創建新的資料屬性,大幅提升資料分析的範疇與品質。

Python

response = pandas_ai.run(df, "Create new features from this data")
print(response)

You can see in the output below that the new feature created by AI is a happiness rank. AI put two and two together to understand that the countries could be ranked based on the happiness index and GDP per capita!

智慧型資料視覺化:透過生成式AI

PandasAI透過運用生成式AI,為您的資料集推薦最合適的視覺化呈現方式,從而強化資料視覺化。不再煩惱該選用哪種圖表或圖形,您將獲得量身定製的建議,助您充分發揮資料潛力。

舉例來說:

Python

response = pandas_ai.run(df, "Which data visualization do you recommend for this data?")
print(response)

從下方輸出可見,資料已按照AI引擎認為最佳的方式進行視覺化。

實際應用案例:生成式AI在財務預測中的應用

讓我們探討PandasAI的一個實際應用案例。它不僅能分析過去的股價資料,還能根據市場趨勢、公司表現及全球事件模擬未來情境。

我們可利用生成式模型創建一系列可能的未來股價,考慮到波動性及其他市場指標。這種全面且前瞻性的方法使投資者和分析師能更好地準備應對財務結果,使生成式AI成為財務預測中不可或缺的資產。

Pandas與PandasAI:生成式AI的優勢

雖然Pandas是眾所周知的資料處理與分析庫,但PandasAI更進一步,整合了生成式AI功能。使用傳統Pandas時,您可能需要編寫程式碼來篩選、轉換及視覺化資料,但受限於既有資料。

另一方面,PandasAI 能夠根據自然語言提示生成新的見解和視覺化效果,甚至操縱數據。這種生成式AI引擎能提供難以手動編碼的分析。想像一下,向你的數據提問:“下一季度的潛在收入是多少?”並收到一份生成的報告作為答案——這就是PandasAI的力量。

注意:我們已經探討了PandasAI接受的多種提示。如果你嘗試創意提示,請注意可能會出現錯誤。這裡有一個幫助調試該問題的有用連結:在“行”問題上出現“無效輸入數據。必須是Pandas或Polars數據框”的崩潰.

結論

PandasAI不僅僅是另一個數據操縱工具;它因其生成式AI能力而在數據分析領域邁出了重要一步。它不僅與你的數據合作,而且理解數據以生成新見解,超越了傳統分析框架的限制。

從填補數據集中的空白到預測金融市場,可能性無窮無盡。隨著我們邁向數據日益複雜的未來,從中生成有意義的見解的能力變得至關重要。PandasAI為我們展示了那個未來,這是一個你將想要探索的機會。

附加資源

Source:
https://dzone.com/articles/harnessing-generative-ai-in-data-analysis-with-pan