如何善用 ChatGPT 輔助資料分析與視覺化工作?(一)基本問答篇 (Using ChatGPT for Data Analysis & visualization)


※ 作者:彭其捷(https://www.visualization.tw/

近期 AI 工具的進步,對人類許多面向的輔助進步神速,其中以 ChatGPT 為知名度最高的一款,透過簡單對話,即可輔助內容產出。本文希望初步探討,在資料分析或是視覺化領域中,可以有哪些面向能夠與 ChatGPT 進行搭配呢?

ps. 本文難度設定為盡量人人都可理解,所以雖然會出現少許程式碼,但完全不懂程式碼的人也能了解 90% 的內容。

Note: 目前 ChatGPT 所生成的答案,還是可能有許多偏誤(因為是從大量文本所自動組合而成),所以相關的訊息,建議將其視為 #輔助 的情境較為適用,都建議再多進行確認喔!但對我來說,已經確實可以在許多任務達到 #生產力提升 的目標了!


直接提問 ChatGPT:你可以怎樣輔助資料視覺化的任務?

本文的開始,直接提問 ChatGPT 以下問題:

Q:「你可以怎樣輔助資料視覺化的任務呢」

ChatGPT 回覆的情境包括:解釋資料、選擇最佳的視覺化工具、自動創建圖表、生成敘述性文字、回答資料相關問題等等;待因爲 ChatGPT 的特性是重複提問會得到不同的結果,第二次則得到了新的回覆包括資料清洗、給予建議等等。

不過,目前直接透過 ChatGPT 的互動介面,只能夠得到純文字(或是程式碼)的回覆,如果需要圖像化的結果,還需要搭配程式碼的方式生成。

圖:第一次提問所得到的回覆

圖:第二次提問所得到的回覆

目前 ChatGPT 限制於只能 input 對話式的文本,可能還需要持續探索使用方式,但作為未來應用場景的想像是挺具體的!覺得不久後的將來,AI 除了對話文本式使用情境外,也可能逐漸能夠支持Input 圖表並 output 建議等等!

接下來,進入本文吧,來看看現在的 ChatGPT,在哪些環節有機會能夠輔助我們執行資料視覺化任務呢?本文切分了十種場景,分別為:

  • 情境一:幫助挑選數據圖表    
  • 情境二:詢問特定議題的指標
  • 情境三:詢問指標的排名、變化、應變
  • 情境四:詢問指標的計算方式
  • 情境五:詢問數據的來源與管道
  • 情境六:詢問可以執行資料視覺化的練習資料集
  • 情境七:幫忙回答圖表的 Best Practice
  • 情境八:挑選合適的視覺化工具
  • 情境九:生成 Python / HTML / Javascript 的虛擬程式碼    
  • 情境十:生成真實資料集圖表 + debug

情境一:幫助挑選數據圖表

基本情境,想說直接問看看 ChatGPT 在特定的情境,適合使用哪一圖表?我隨意提問了三個指令,覺得都表現的還不錯,答案有一定的好品質:

  • Q:如果要比較收入與成本支出,使用哪一種圖表比較合適?
  • Q:如果想要呈現公司業績的成長,哪一種圖比較合適呢?
  • Q:如果想要呈現全國選舉結果,哪一種圖比較合適呢?

我覺得 ChatGPT 確實有針對資料集的類別屬性,提供一些可以思考的圖表製作方向,且特別對於設計儀表板有幫助,讓我對於該儀表板有一個初步的想像,可以加速圖表的設計與製作。


情境二:詢問特定議題的指標

有做過數據分析的人就會知道,挑選正確的量化指標非常重要,而如果是比較不熟悉的領域,就需要花一些時間消化指標,以下是我嘗試問 ChatGPT 關於數據指標的一些提問,大家可以參考看看。

  • Q:可否告訴我,哪些是人力資源的 KPI 指標?
  • Q:請問哪些指標用來衡量一個國家的財富不均狀況?

覺得答案蠻不錯的,我有刻意詢問一些我不太確定的議題,而答案確實可以在短時間讓我獲得許多多實用的訊息。


情境三:詢問指標的排名、變化、應變

因為 ChatGPT 的強項在於收集網路上的超大量文本,來作為回覆的依據,因此我覺得或許可以問看看相關數據變化的可能原因,例如以下的指令:

  • Q:可否告訴我,台積電過去二十年的的股價變化?
  • Q:可否告訴我,台灣目前的生育率世界排名以及可能的原因?
  • Q:面對台灣的低生育率議題,可能有怎樣的應變方式呢?

覺得 ChatGPT 對於回覆歷史數據變化還蠻方便的,可以快速問到一些常見的數據,不用再自己消化很多的部落格資訊;此外,詢問一些社會議題(生育率)也能給出不錯品質的回覆,甚至能夠主動性的提供一些參考建議,覺得已經是很強大的人類助理的感覺。


情境四:詢問指標的計算方式

了解指標之後,覺得 ChatGPT 應該也可以提供計算方式的資訊,實驗的效果也不錯;以下嘗試詢問了「基尼係數」與「RFM」指標的計算方式,答案也都不錯。

  • Q:請問基尼係數的計算方式?
  • Q:請問 RFM 指標的計算方式?

情境五:詢問數據的來源與管道

另外,過往透過 Google 要找到一些資料集的來源,有時會有點花時間,來試試看透過 ChatGPT 找找看,例如以下的指令:

  • Q:可否告訴我,哪裡有全球不同國家的 GDP 資料?
  • Q:請問哪裡有台灣與日本的經濟發展比較數據?
  • Q:請問哪裡有關於台灣零售業的開放資料?

覺得這個情境也是蠻好用的,雖然過往透過 Google 也可以找到類似的資料,但 ChatGPT 因為回覆的訊息量更摘要性,真的能夠幫助我們在幾秒內直接取得整理過的資訊;此外,因為教學工作的關係,我常常要找一些練習用的資料集,覺得下次確實會想要透過 ChatGPT 來詢問數據的來源。


情境六:詢問可以練習資料視覺化的資料集

前面的詢問,已經能夠取得指定資料的來源,但我好奇可否更直接的詢問資料集的連結,因此測試了以下的問題,ChatGPT 提供了經典的 Iris Dataset,且我還蠻喜歡它附加的一些文字解釋與分析的方向!

  • Q:可否提供一個適合進行資料視覺化練習的資料集,且具備多種資料欄位的類型

情境七:幫忙回答圖表的 Best Practice

在執行資料視覺化的時候,常常看到有人使用了錯誤的方式製圖,想實驗看看 ChatGPT 能否提供一些製圖上的精準輔助資訊(最佳實踐 Best Practice),這個實驗也是可以的,答案的品質也很不錯;我還刻意提問了比較少見的玫瑰圖,也能確實回覆正確的大案。

  • Q:可否告訴我,使用圓餅圖的最佳實踐(Best Practice)
  • Q:可否告訴我,使用南丁格爾玫瑰圖的最佳實踐(Best Practice)

情境八:挑選合適的視覺化工具

蠻好奇 ChatGPT 消化了大量資訊後,會怎樣回答關於資料視覺化工具的提問,另外因為我是 Tableau 講師,也好奇 ChatGPT 會不會提到這套軟體(實驗結果是 Yes,而且還排在第一位);此外因為 PowerBI 不支援 Mac,所以也刻意的提出我是用 Mac 電腦,看是否 ChatGPT 會給出正確的答案,而確實第二種提問,就沒有回答 PowerBI。

  • Q:請問有哪一些資料視覺化工具,在哪些情境適合使用哪一套軟體呢?
  • Q:我是用 Mac 電腦,可否推薦給我合適的資料視覺化工具?PowerBI 不能使用於 Mac 嗎?

情境九:生成 Python / HTML / Javascript 的虛擬程式碼

Hint:本情境需要些許程式碼經驗

ChatGPT 可以用來輔助生成程式碼已經不是新聞了,以下測試一些請它生成圖表程式碼的指令(ps. 之後會寫另一篇,關於 ChatGPT 怎樣跟程式碼 IDE 整合的方式,因為難度較高就先不放在此篇中),實驗結果也非常順利,甚至還會提供程式碼的解讀!

  • Q:可否幫我生成一段 python 程式碼,可接受四個變數 x,y,z,v ,並透過 Scatter Chart 呈現

把結果丟到 Colab 執行,是完全可以運作的(一個字都沒有改)。

另外,如果改指定用 html 與 Javascript(前端程式碼標準組合)來詢問看看;結果也蠻不錯,ChatGPT 決定使用 Chart.js 來輸出程式碼,可參考以下的結果(因程式碼較長,截圖有省略部分資訊)。

  • Q:可否幫我生成一段 html 與 javascript 前端程式碼,可接受四個變數 x,y,z,v ,並透過 Scatter Chart 呈現

將產生的程式碼,透過可前端測試的環境(Jsfiddle)直接貼上,也確實可以生成圖表,而且還是動態的(點這裡可以線上瀏覽)。


情境十:生成真實資料集圖表 + debug

Hint:本情境需要些許程式碼經驗

過程中,隨意嘗試了一些指令,發現 chatGPT 也很擅長直接幫忙餵資料,甚至可以直接指定 X,Y 軸之類,例如我透過以下指令:

  • Q:你可以生成一個世界GDP排行前50的圖表程式碼嗎?X 軸為 GDP,Y 軸是國家

所得到的程式碼,甚至同時包括了資料來源(csv),所以基本上整段程式碼直接餵給程式碼編輯軟體,就可以產生圖表了,基本上整個過程只要 1 分鐘,非常驚人!

然後我將此段程式碼餵給 Google colab 來跑結果看看,一個字都沒改,就可以確實得到資料視覺化的圖片。

此外,我有閱讀到一些文章,有提到也可以直接請 ChatGPT 產生視覺風格不同的圖表,所以我重新提問以下問題(我送出後才發現我打錯字「事>是」,結果 ChatGPT 還是順利解讀了,也能產生正確的結果程式碼),真的非常好用!:

  • Q:承接上面的結果,可否把圖表改成事黑色底的

此外,ChatGPT 也會同時提供程式碼的解說

接下來,如果是涉及到國家排行的部分,我自己蠻偏好用「地圖」呈現的,故我想說問問 ChatGPT 可否幫我改成用地圖來呈現數據,結果確實是成功的,大家也可以玩玩看!

  • Q:承接上面的結果,可否把圖表改成用地圖呈現

不過這裡初步執行,是會報錯的,因為原始環境缺少了產生地圖的程式碼,

突發奇想,乾脆請 ChatGPT 幫忙 Debug 好了

以下是相同數據,改用地圖呈現的成果,雖然沒有很好但確實是產生了!

然後我也好奇,難道它也可以看懂想要標示標籤的需求嗎?結果也是成功的,確實更新的程式碼也幫我們加上了國家的標籤。

ps. 以上的 Python Collab 環境,可直接複製執行:https://colab.research.google.com/drive/1pPiaKgnl0ZqnxL47D9G7VNqInvulo0jd?usp=sharing


結語

這次大概花了 3 個小時進行實驗,對於結果很滿意!透過 ChatGPT 的問答確實能夠輔助到許多資料分析或是視覺化的知識運用,也覺得還有許多持續探索的空間。

補充說明,本篇文章比較偏向基礎初探,尚未探討到 (1) 如何跟自身的工作流程結合,例如請 ChatGPT 幫忙分析自己的資料集,或是 (2) 直接透過程式碼編輯器 IDE 引入 ChatGPT 的函式庫的情境。但因為這些流程都會涉及到更多的程式碼技巧,故決定寫在另外一篇。也歡迎大家訂閱本站文章,就能收到後續新文章的推送,感謝閱讀。

更多技巧與課程活動

✔️ 關於 Excel 資料分析 結合 ChatGPT 的應用
Hahow 好學堂 最新課程《資料變決策!Excel X AI 升級職場數據分析力》
這堂課將結合我於企業、學校 AI 課程數百小時授課的經驗,教你如何應用 AI 優化或加速數據分析任務 ➡️ 課程傳送門

#Excel #資料分析 #ChatGPT #生成式AI

✔️ 關於 資料分析 與 資料視覺化
Hahow 好學堂 線上課程《資料變決策!商業圖表製作與視覺化分析的技術》
適合工作中需要接觸數據的人,讓你可以透過視覺化的手法分析數據、呈現數據、分享數據,說出好的資料故事! ➡️ 索取折扣碼優惠

#資料分析 #資料視覺化 #商業圖表 #資料故事

✔️ 關於 資料視覺化分析 與 Tableau
Hahow 好學堂 線上課程《資料變決策!從零上手 Tableau 大數據視覺化》
步驟式教學 Tableau 工具操作,詳細解析 Tableau 的各類實務操作過程,手把手做出專屬自己的資料視覺化成果!➡️ 索取折扣碼優惠

#資料視覺化 #商業圖表 #Tableau #大數據

Categories

,

Tags


About 知識遊牧(Knowmad)


訂閱本站

本站提供關於:資料分析、資料視覺化、ChatGPT、Tableau 等資訊,歡迎 訂閱本站,取得最新訊息。