回到頂部
髒資料清洗自動化:用大語言模型完成爬蟲與資料預處理 — 封面

髒資料清洗自動化:用大語言模型完成爬蟲與資料預處理

告別手動填補 Excel 缺失值與格式對齊。教你如何用 Prompt 讓 AI 寫出自動化腳本處理髒資料。

在現實世界中,完美的資料集只存在於 Kaggle 比賽和教科書裡。當你從業務單位收到 Excel 報表時,通常會看到以下災難:

  • 格式錯亂:日期有 2026-03-3126/03/31、甚至是 115年3月底
  • 單位不一:金額欄位有的寫 100萬、有的寫 1,000,000、還有人打 1m
  • 充滿空值:有一半的客戶沒填電話號碼。
  • 全半形夾雜:地址裡混雜各種奇怪的空白。

以前你必須花一整天寫正則表達式(RegEx)或是手刻 VBA 巨集。現在,只要一句 Prompt


現代分析師的超級武器:Advanced Data Analysis

如果你使用 ChatGPT Plus,它內建了一個在獨立虛擬環境中執行的 Python 直譯器。這代表你只要上傳檔案,用自然語言下達指令,它就會自己寫 Code -> 自己執行 -> 檢查有沒有錯 -> 把清洗好的檔案還給你

[!TIP] 即使你一輩子沒寫過 Python,只要你會講出「你想要什麼樣的資料格式」,AI 就能幫你實作。

實際演練:上傳統計報表

準備一個包含「髒資料」的 CSV 或 Excel 檔案,上傳給 ChatGPT,然後提供以下具有邏輯思維的 Prompt:

這是一份我們公司的「Q1 線上渠道客戶名單.xlsx」。由於是從多個系統人工匯出的,裡面充斥著髒資料。我需要你作為資深數據分析師,透過 Python 幫我進行資料清洗。

請依序執行以下處理步驟,並在每一步完成後告訴我處理結果:
1. 【統一日期格式】:把「購買日期」欄位中的所有格式(包含民國年或中文字),全部轉換為 YYYY-MM-DD 的標準 ISO 格式。
2. 【特徵提取與替換】:把「訂單金額」欄位中的「萬」、「千」、「元」等中文字去除,並統一轉換為純數字(Integer),例如「10萬」變成 100000。
3. 【處理空值】:找出「會員等級」為空值的欄位。若該客戶「訂單金額」大於 5000,請填補為「VIP」;否則填為「一般會員」。
4. 【去關聯化(脱敏)】:將「客戶姓名」只保留第一個字,其餘以 * 代替;「手機號碼」中間三碼換成 ***。

處理完成後,請給我一份清洗完畢的 `cleaned_Q1_customers.csv` 下載連結。

如果遇到 AI 報錯怎麼辦?

在使用 Data Analysis 時,AI 自動生成的腳本有時會因為特殊編碼(例如 Big5 繁體中文編碼)而出現讀取錯誤 UnicodeDecodeError

不要慌張,這時候你不需要懂 Code,只要溫柔地對它說:

「看來用 utf-8 讀取失敗了,這份檔案可能是台灣傳統 Windows 系統產生的。請嘗試使用 cp950big5 重新讀取。」

AI 就會聰明地換一種讀取方式再次嘗試,直到成功為止。


建立自動化 Pipeline:把黑手工作交接給系統

如果你每週都會收到這種「很髒」的報表,你不可能每次都手動上傳去請 ChatGPT 清洗。

正確的做法是請它把清洗邏輯寫成自動化的 Python 腳本(Pipeline)

這個清洗邏輯非常完美!
因為我們每週都會收到格式一模一樣的報表,請幫我把剛剛的所有清洗步驟,封裝成一個完整的 Python 腳本檔案 `clean_data.py`
我希望未來我只要在電腦上輸入 `python clean_data.py input.csv output.csv` 就可以自動完成同樣的清洗流程。

這就是 AI 顛覆資料科學痛點的最佳證明:它幫你跳過繁瑣的寫扣流程,讓你直接獲得解決問題的自動化工具。


🧹 實戰進階:不用寫程式也能清洗資料的替代方案

如果你完全不想碰 Python,以下工具也能處理常見的髒資料問題:

工具適合場景費用
ChatGPT Advanced Data Analysis上傳 Excel 直接操作Plus 月費 20 美元
Google Sheets + AI 外掛小量資料的快速清理免費
Make.com 自動化每週固定格式的報表清洗免費版可用
OpenRefine(開源)大量資料的批次清理完全免費

選擇建議: 偶爾清一次選 ChatGPT 最快;每週重複清同一種報表,就請 AI 寫成腳本或用 Make 自動化。


⚠️ 資料清洗的三大地雷

1. 不要相信「資料完整了」

AI 清洗完畢後,務必抽檢 5–10 筆資料。最常見的問題是:AI 把「不適用」和「空白」混為一談,或是把「0」當成空值刪掉。

2. 編碼問題是台灣人的宿命

台灣的政府機關和老系統匯出的檔案,80% 是 Big5 編碼。如果 AI 說讀不了,記得告訴它「嘗試用 cp950 或 big5 編碼」。

3. 個資脫敏不能事後才想到

如果你的資料包含客戶姓名、電話、身分證號,上傳給 AI 之前就必須脫敏。不要等 AI 清洗完才發現機密資料已經上傳到雲端了。

資料清洗完畢後,下一步就是數據視覺化與商業洞察——讓老闆看懂你的分析結果。也可以回到資料分析師 AI 技能樹看完整學習路徑。


❓ 常見問題 FAQ

AI 能處理多大的檔案?

ChatGPT 的 Advanced Data Analysis 目前可處理最大約 512MB 的檔案,但實務上超過 50MB 就容易卡頓或逾時。如果你的資料超過十萬筆,建議先用 Excel 篩選出需要清洗的欄位,只上傳「有問題的部分」。真正的大數據清洗(百萬筆以上),還是需要在本地跑 Python 腳本。

AI 產出的 Python 腳本安全嗎?可以直接在公司電腦上跑嗎?

ChatGPT 產出的腳本通常只用到 pandas、openpyxl 等標準資料處理套件,不會有惡意程式碼。但建議:1) 先在測試資料上跑一次確認結果正確,2) 不要讓腳本有「刪除原始檔案」的權限。如果公司 IT 有疑慮,可以把腳本內容給他們過目。

清洗過程中 AI 會不會改到不該改的資料?

會,這是最需要警惕的風險。例如 AI 可能把客戶名字「馬」當成金額單位去處理,或是把「台北市 101 號」裡的 101 當成數值。解法是:在 Prompt 中明確指定哪些欄位要處理、哪些絕對不動,並在清洗後比對原始資料的列數是否一致。

不會寫程式的人,看到 AI 產出的 Code 要怎麼判斷對不對?

你不需要看懂每一行程式碼。關注三件事:1) AI 處理完後說「共處理 N 筆資料,修改了 M 個欄位」——這些數字合理嗎?2) 下載清洗後的檔案,打開 Excel 肉眼抽查前 20 筆;3) 確認列數(row count)跟原始檔一致,沒有被誤刪。

№ · further reading

延伸閱讀