數據分析學習筆記 —— 數據預處理
數據預處理一方面是要提高數據的質量,另一方面是要讓數據更好地適應特定的挖掘技術或工具。
爲什麼需要進行數據預處理?
包含在數據源中的大部分原始數據未被處理,它們是不完整的數據或者含有不符合數據分析要求的數據,爲此需要進行數據預處理。這些數據中可能包含(不符合要求的數據):
- 過時或冗餘字段
- 缺失值
- 離羣值
- 其形式不適合數據分析模型的數據
- 與分析策略或常識不一致的值
離羣值是偏離了其他值得趨勢的極端值。識別離羣值非常重要,因爲它們有可能代表數據輸入錯誤。此外,某些統計方法對離羣值是非常敏感的,即使離羣值是有效的數據而不是錯誤的數據,也可能對分析產生不可靠的結果。
識別離羣值的圖形方法是校驗變量的直方圖。
識別離羣值的數值方法:
- 使用Z-score
- 均值和標準差
- IQR
數據預處理的主要內容包括:數據清洗、數據集成、數據變換和數據規約。
知識點總結如下圖所示:
數據預處理的主要過程
數據清洗:主要是刪除原始數據集中的無關數據、重複數據,平滑噪聲數據,篩選掉與挖掘主題無關的數據,處理缺失值、異常值等。
數據集成:將多個數據源合併存放在一個一致的數據存儲(如:數據倉庫)中的過程。
數據變換:對數據進行規範化處理,將數據轉換成“適當的”形式,以適用於挖掘任務及算法的需要。
數據規約:在大數據集上進行復雜的數據分析和挖掘需要很長的時間,數據規約產生更小但保持原數據完整性的新數據集。在規約後的數據集上進行分析和挖掘將更有效率。