資料清洗

power0405hf發表於2015-11-04

1.概念

資料清洗:把髒資料清洗掉,提高資料質量。
Data cleansing, Data cleaning, Data scrubbing三種表達方式都可以,意思都是檢測和去除資料集中的噪聲資料和無關資料,處理遺漏資料,去除空白資料域和知識背景下的白噪聲。
資料清洗分為有監督清洗和無監督清洗兩類。

  • 有監督清洗:在領域專家的指導下,收集分析資料,手工去除明顯的噪聲資料和重複記錄,填補缺值資料等清洗動作;
  • 無監督清洗:根據一定的業務規則,預先定義好資料清洗演算法,由計算機自動執行演算法,對資料集進行清洗,然後產生清洗報告。
  • 一般都是先無監督清洗,產生清洗報告,再讓專家根據清晰報告對清洗的結果進行人工整理。

2.資料清洗過程

資料清洗一般包括資料分析,定義和執行清洗規則,清洗結果驗證等步驟:

1. 資料分析

根據相關的業務知識,應用相應的技術,如統計學,資料探勘的方法,分析出資料來源中資料的特點,為定義資料清洗規則奠定基礎。
除手工測查資料或資料樣本之外,還可以用專門的分析程式來分析資料來源。
資料分析的結果是資料來源一些資料質量問題的描述,被儲存到後設資料庫中。

2. 定義清洗規則

主要的清洗規則包括:
* 空值的檢查和處理
* 非法值的檢測和處理
* 不一致資料的檢測和處理
* 相似重複記錄的檢測和處理

3. 執行資料清洗規則

  • 檢查拼寫錯誤
  • 去掉重複的(duplicate)記錄
  • 補上不完全的(incomplete)記錄
  • 解決不一致的(inconsistent)記錄
  • 用測試查詢來驗證資料
  • 生成資料清晰報告

4.清洗結果驗證

對定義的清洗轉換規則的正確性和效率進行驗證和評估,當不滿足清洗要求時要對清洗規則或系統引數進行調整和改進。
資料清洗過程中往往需要多次迭代的進行分析,設計和驗證。

3.屬性清洗

1. 屬性清洗的內容

  • 錯誤或非法資料
  • 拼寫錯誤
  • 空值
  • 異常資料
  • 不一致資料
  • 嵌入值。一個屬性值包含多個組成成分,如,地址=”上海市東川路800號上海交通大學“。就可以分解成:地址=”上海市東川路800號“,學校=”上海交通大學“。

2. 屬性清洗的基本方法

  1. 空值資料的清洗

    • 空值資料的語義

      • 不存在型空值。即無法填入的值,如一個未婚者的配偶姓名。
      • 存在型空值。該類空值的實際值在當前是未知的,但它有確定性的一面,如它的實際值的確存在,總是落在一個可以確定的區間內。
      • 佔位型空值。即無法確定是不存在型空值還是存在型空值。一般情況下,空值是指存在型空值。
    • 空值資料的處理方法

      • 刪除包含空值的記錄(空值佔比重很小而不重要時可以採用)
      • 自動補全方法。通過統計學原理,根據資料集中記錄的取值分佈情況來對一個空值進行自動填充,可以用平均值,最大值,最小值等基於統計學的客觀知識來填充欄位。
      • 手工的補全缺失值。僅適用於非常重要的任務資料。
      • 對空值不正確的填充往往將新的噪聲引入資料中,使知識獲取產生錯誤的結果。當資料集的數量很大且有較多缺失值的情況下,效率很差。
  2. 不一致資料屬性清洗

    • 不一致資料的語義
    • 冗餘性不一致。相同的資訊沒有進行一致性的同步更新。
    • 故障性不一致。由於某種原因(硬體或軟體故障)而造成資料丟失或資料損壞,系統進行恢復時,不能恢復到完全正確,完整,一致的狀態。
    • 不一致資料處理的基本方法
    • 清洗方法主要在分析不一致產生原因的基礎上,利用各種變換函式,格式化函式,彙總分解函式去實現清洗。
  3. 噪聲資料的清洗

    • 噪聲資料的語義
      噪聲資料就是除空值資料,不一致資料以外的其他不準確。不客觀資料,該類噪聲資料,可能會導致錯誤的資料分析結果。
    • 噪聲資料的基本處理方法
      • 分箱:將儲存的值分佈到一些箱中,用箱中的資料值來區域性平滑儲存資料的值。包括按箱平均值平滑,按箱中值平滑和按箱邊界值平滑。
      • 迴歸:找到恰當的迴歸函式來平滑資料。線性迴歸要找出適合兩個變數的”最佳“直線,使得一個變數能預測另一個。多線性迴歸涉及多個變數,資料要適合一個多維面。
      • 計算機檢查和人工檢查相結合:可以通過計算機將被判定資料與已知的正常值比較,將差異程度大於某個閾值的模式輸出到一個表中,人工稽核後識別出噪聲資料。
      • 聚類:將類似的值組成群或”聚類“,落在聚類集合之外的值被視為孤立點。孤立點可能是垃圾資料,也可能是提供資訊的重要資料。垃圾資料將清除。

3. 屬性清洗的過程

  • 分析資料集中的屬性值
  • 定義屬性值清洗規則
  • 執行屬性清洗規則

相關文章