11/100 資料清理與前處理 🧹 去除錯誤與不完整數據,讓 AI 更加「聰明」!

更新於 發佈於 閱讀時間約 9 分鐘

AI時代系列(1) 機器學習三部曲: 🔹 第一部:《機器學習 —— AI 智慧的啟航》


11/100 第二週:資料處理與特徵工程


11. 資料清理與前處理 🧹 去除錯誤與不完整數據,讓 AI 更加「聰明」!



1️⃣ 資料清理與前處理 🧹


去除錯誤與不完整數據,讓 AI 更加「聰明」! 🚀


資料處理是機器學習的核心步驟之一,因為 高品質數據決定 AI 的準確度。如果數據有缺失值、異常值、重複數據或不一致的格式,即使是最強大的模型也可能產生錯誤結果!


今天,我們將介紹 數據清理 (Data Cleaning) 與前處理 (Preprocessing),確保你的 AI 模型擁有最乾淨的數據來學習! 💡

________________________________________


📌 1.1 為什麼數據清理很重要?


❌ 髒數據的影響


如果數據沒有經過清理,可能會產生以下問題:

模型無法學習正確的模式

演算法過擬合或無法收斂

錯誤的預測結果

影響模型的可解釋性與決策準確度


例如,假設我們在訓練房價預測模型時,數據如下:


房屋面積 (㎡) 房價 (萬元)

120 500

90 350

-100 600

NaN 400

80 "三百五十"


這樣的數據如果不先清理,AI 可能會學到錯誤的規則,導致預測不準確! 😱

________________________________________


📌 1.2 資料清理的主要步驟


我們將使用 Pandas 來處理數據,這是一個 Python 中最常用的數據分析庫。


🔹 1️⃣ 處理缺失值 (Missing Values)

缺失值是指數據中某些欄位沒有填寫,常見的處理方法有:


✅ 刪除缺失值 (dropna())

✅ 填補缺失值 (fillna()) - 以均值、中位數或眾數填補


📌 Python 實作


import pandas as pd

import numpy as np


# 創建數據

data = {'房屋面積': [120, 90, np.nan, 80, -100],

'房價': [500, 350, 400, "三百五十", 600]}


df = pd.DataFrame(data)

print("原始數據:")

print(df)


# 方法 1:刪除含有 NaN 的列

df_cleaned = df.dropna()

print("\n刪除缺失值後的數據:")

print(df_cleaned)


# 方法 2:填補 NaN(以平均值填補)

df["房屋面積"].fillna(df["房屋面積"].mean(), inplace=True)

print("\n填補缺失值後的數據:")

print(df)

________________________________________


🔹 2️⃣ 處理異常值 (Outliers)


異常值是數據中與其他數據差異極大的值,例如:

房屋面積出現 負數 (-100)

工資數據顯示為 1000 萬 (明顯超出範圍)


📌 處理方法 ✅ 使用四分位數 (IQR) 或標準差法移除異常值

✅ Winsorization (剪裁法),將異常值限制在合理範圍內


📌 Python 實作


# 透過 IQR 方法移除異常值

Q1 = df["房屋面積"].quantile(0.25)

Q3 = df["房屋面積"].quantile(0.75)

IQR = Q3 - Q1


# 設定異常值範圍 (通常 IQR*1.5 之外的值被視為異常)

lower_bound = Q1 - 1.5 * IQR

upper_bound = Q3 + 1.5 * IQR


# 移除異常值

df_filtered = df[(df["房屋面積"] >= lower_bound) & (df["房屋面積"] <= upper_bound)]

print("\n移除異常值後的數據:")

print(df_filtered)

________________________________________


🔹 3️⃣ 處理數據類型不一致 (Data Format Issues)


某些數據可能格式錯誤,例如:

數字存成字串 ("三百五十" 應轉為 350)

日期格式錯誤 ("2024/01/01" 變成 "01-01-2024")


📌 處理方法 ✅ 轉換數據格式 (astype())

✅ 使用 pd.to_datetime() 處理日期數據


📌 Python 實作


# 轉換 "三百五十" 為數字

df["房價"] = df["房價"].replace("三百五十", 350)

df["房價"] = df["房價"].astype(float)

print("\n修正數據格式後:")

print(df)

________________________________________


🔹 4️⃣ 處理重複數據 (Duplicate Data)


如果數據庫中有重複的數據 (例如相同 ID 的客戶資料出現多次),可能會影響 AI 訓練。


📌 處理方法

✅ 使用 drop_duplicates() 移除重複數據


📌 Python 實作


df = pd.DataFrame({"ID": [1, 2, 2, 3, 4], "房價": [500, 350, 350, 400, 600]})

print("\n原始數據:")

print(df)


# 移除重複值

df_no_duplicates = df.drop_duplicates()

print("\n移除重複數據後:")

print(df_no_duplicates)

________________________________________


📌 1.3 總結:AI 數據清理步驟


當我們進行 AI 數據清理時,通常會依循幾個主要步驟:首先,針對缺失值部分,可以選擇刪除(使用 dropna())或適當填補(如均值、中位數填補,使用 fillna());其次,處理異常值時,可採用 IQR 四分位距方法、標準差法,或 Winsorization(縮尾法)來減少極端值對模型的影響;再來,若數據格式錯誤,可以透過 astype() 函數轉換數據類型,確保數據一致性;最後,為避免重複數據干擾分析結果,使用 drop_duplicates() 去除重複項目。透過這樣系統性的清理流程,可以有效提升數據質量,為後續模型訓練打下良好基礎。


💡 數據乾淨了,AI 學得才準確!

________________________________________


📌 1.4 測驗:你掌握數據清理了嗎?


📝 單選題


1️⃣ 如果數據中存在 NaN,最好的做法是?

A. 直接刪除所有 NaN

B. 用 0 來填補

C. 根據數據特性,使用均值或眾數填補

D. 忽略 NaN,讓 AI 自行處理


✅ 答案:C

📌 解析:直接刪除可能會丟失太多信息,而用均值或眾數填補可以保持數據完整性。

________________________________________


2️⃣ 如何處理極端異常值?

A. 直接刪除

B. 使用 IQR 方法或 Winsorization

C. 忽略異常值

D. 讓 AI 自己解決


✅ 答案:B

📌 解析:IQR 方法 (四分位距) 或 Winsorization 可以讓數據更穩定,不會因為極端值影響模型。

________________________________________


🎯 你已完成數據清理入門!

🎉 恭喜!現在你已經掌握了數據清理的基本概念與技巧! 🎉

💡 下一步:學習特徵工程,讓 AI 更加「敏銳」! 🚀


留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
8會員
148內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/05/24
想快速踏入機器學習?Anaconda+Jupyter Notebook 一次搞定!本單元教你建立虛擬環境、安裝 NumPy/Pandas 至 TensorFlow/PyTorch,並附版本檢測程式碼。十分鐘完成環境配置,立即啟動你的 AI 開發之旅!
Thumbnail
2025/05/24
想快速踏入機器學習?Anaconda+Jupyter Notebook 一次搞定!本單元教你建立虛擬環境、安裝 NumPy/Pandas 至 TensorFlow/PyTorch,並附版本檢測程式碼。十分鐘完成環境配置,立即啟動你的 AI 開發之旅!
Thumbnail
2025/05/24
想真正駕馭AI,就得先打好數學根基!本篇濃縮線性代數、機率統計、微積分三大支柱,帶你看懂向量矩陣、貝氏推理到梯度下降的心跳節奏。讀完你將明白模型運算、決策與最佳化如何彼此呼應,迅速破解常見數學痛點,為深度學習升級鋪路!
Thumbnail
2025/05/24
想真正駕馭AI,就得先打好數學根基!本篇濃縮線性代數、機率統計、微積分三大支柱,帶你看懂向量矩陣、貝氏推理到梯度下降的心跳節奏。讀完你將明白模型運算、決策與最佳化如何彼此呼應,迅速破解常見數學痛點,為深度學習升級鋪路!
Thumbnail
2025/05/24
想讓AI模型更精準?關鍵就在特徵工程!從數值標準化、One-Hot到BERT向量,本篇教你把原始資料轉換成AI能讀懂的「黃金特徵」,大幅提升效能、降低過擬合。閱讀後,你將學會如何用好眼睛看數據,奪回專案主導權!
Thumbnail
2025/05/24
想讓AI模型更精準?關鍵就在特徵工程!從數值標準化、One-Hot到BERT向量,本篇教你把原始資料轉換成AI能讀懂的「黃金特徵」,大幅提升效能、降低過擬合。閱讀後,你將學會如何用好眼睛看數據,奪回專案主導權!
Thumbnail
看更多
你可能也想看
Thumbnail
常常被朋友問「哪裡買的?」嗎?透過蝦皮分潤計畫,把日常購物的分享多加一個步驟,就能轉換成現金回饋。門檻低、申請簡單,特別適合學生與上班族,讓零碎時間也能創造小確幸。
Thumbnail
常常被朋友問「哪裡買的?」嗎?透過蝦皮分潤計畫,把日常購物的分享多加一個步驟,就能轉換成現金回饋。門檻低、申請簡單,特別適合學生與上班族,讓零碎時間也能創造小確幸。
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
嗨!歡迎來到 vocus vocus 方格子是台灣最大的內容創作與知識變現平台,並且計畫持續拓展東南亞等等國際市場。我們致力於打造讓創作者能夠自由發表、累積影響力並獲得實質收益的創作生態圈!「創作至上」是我們的核心價值,我們致力於透過平台功能與服務,賦予創作者更多的可能。 vocus 平台匯聚了
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
在當今快速變化的數位時代,企業面臨著前所未有的數據處理需求。為了應對這些挑戰,企業紛紛建立自己的大型語言模型(LLM),利用大量數據進行訓練,讓模型能夠理解並生成自然語言,從而實現人機協作,優化業務流程並提升客戶體驗。
Thumbnail
本文介紹了人工智慧(AI)及機器學習(ML)的基本概念和關係,探討了數據在機器學習中的重要性,以及深度學習和生成式人工智慧的應用。
Thumbnail
本文介紹了人工智慧(AI)及機器學習(ML)的基本概念和關係,探討了數據在機器學習中的重要性,以及深度學習和生成式人工智慧的應用。
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
數據分析與解讀 隨著數據的爆炸式增長,能夠分析、解讀和應用數據的能力變得至關重要。這包括熟悉數據分析工具和技術,如統計學、數據挖掘、機器學習等。然而,僅靠短時間的數據分析並不足以提供深入見解。 要熟悉數據分析工具和技術,如統計學、數據挖掘和機器學習,可以從以下幾個方面入手: 基礎知識的學習
Thumbnail
反省就是重寫自己的演算法吧? 假設我就是人工智慧,或心智的可以被看作爲人工智慧的編輯器,那我的程式碼是什麼樣的? 從懵懂無知到一無所知,從自以為是到自我消逝,心智只是執行它的內容,我也需要不斷優化。 最好的優化就是簡化。 最能創造財富的演算法就是關於如何除錯與減少任何風險。
Thumbnail
反省就是重寫自己的演算法吧? 假設我就是人工智慧,或心智的可以被看作爲人工智慧的編輯器,那我的程式碼是什麼樣的? 從懵懂無知到一無所知,從自以為是到自我消逝,心智只是執行它的內容,我也需要不斷優化。 最好的優化就是簡化。 最能創造財富的演算法就是關於如何除錯與減少任何風險。
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
Thumbnail
本文要探討AI的任務與實戰場景。AI技術已深入生活各層面,從違約預測到都市交通管理。AI任務主要有三類:數值型資料處理、自然語言處理(NLP)和電腦影像辨識。時間序列資料和強化學習方法(如AlphaGo)也引起廣泛關注。AI演算法和方法因應不同學派和技術發展而多樣化,了解這些基礎有助選擇適合研究方向
Thumbnail
本文介紹了AI助手在數據收集和訓練過程中的工作原理和不斷進步的過程。關注的內容包括從公開的網絡資源、書籍、文章等渠道收集數據,數據的清洗和結構化處理,知識庫的增量更新以及訓練算法和模型的優化。如果大家對AI助手的發展還有任何其他感興趣的話題或建議,歡迎隨時告訴我們,讓我們共同探索,攜手進步。
Thumbnail
本文介紹了AI助手在數據收集和訓練過程中的工作原理和不斷進步的過程。關注的內容包括從公開的網絡資源、書籍、文章等渠道收集數據,數據的清洗和結構化處理,知識庫的增量更新以及訓練算法和模型的優化。如果大家對AI助手的發展還有任何其他感興趣的話題或建議,歡迎隨時告訴我們,讓我們共同探索,攜手進步。
Thumbnail
本文談及資料科學的領域與分工。首先是建造一個AI的研發流程,資料收集到 AI 模型訓練的過程,AI經歷這一切流程被創造出來並產生價值;再來本文也提及在這個領域中的各種腳色、資料工程師、數據庫工程師、資料科學家和資料分析師的各種介紹。並且強調跨領域合作的重要性。
Thumbnail
本文談及資料科學的領域與分工。首先是建造一個AI的研發流程,資料收集到 AI 模型訓練的過程,AI經歷這一切流程被創造出來並產生價值;再來本文也提及在這個領域中的各種腳色、資料工程師、數據庫工程師、資料科學家和資料分析師的各種介紹。並且強調跨領域合作的重要性。
Thumbnail
使用AI所產出的資訊,必須審慎判讀取捨,不宜照單全收。
Thumbnail
使用AI所產出的資訊,必須審慎判讀取捨,不宜照單全收。
Thumbnail
最新的AI趨勢讓人眼花撩亂,不知要如何開始學習?本文介紹了作者對AI的使用和體驗,以及各類AI工具以及推薦的選擇。最後強調了AI是一個很好用的工具,可以幫助人們節省時間並提高效率。鼓勵人們保持好奇心,不停止學習,並提出了對健康生活和開心生活的祝福。
Thumbnail
最新的AI趨勢讓人眼花撩亂,不知要如何開始學習?本文介紹了作者對AI的使用和體驗,以及各類AI工具以及推薦的選擇。最後強調了AI是一個很好用的工具,可以幫助人們節省時間並提高效率。鼓勵人們保持好奇心,不停止學習,並提出了對健康生活和開心生活的祝福。
Thumbnail
2023年被世人稱做生成式AI世代的元年,各式各樣的AI工具不斷湧現,改變了人們的生活。本文將詳細介紹人工智慧和機器學習的相關知識,以及各種人工智慧和機器學習的實現方法。
Thumbnail
2023年被世人稱做生成式AI世代的元年,各式各樣的AI工具不斷湧現,改變了人們的生活。本文將詳細介紹人工智慧和機器學習的相關知識,以及各種人工智慧和機器學習的實現方法。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News