數據,是本世紀的金礦!大數據加上AI演算,成為企業經營的顯學,管理者在擬定營運決策,不再憑藉個人偏好而是根據心中有「數」。既然數據成為企業最寶貴的資產,如果數據品質低落,將直接影響企業決策的準確度,所以「資料清洗 Data Cleaning 」成為企業的必修課。


藉由資料清洗過程,用來有效提升數據品質,讓上至老闆下至第一線員工,都能從龐大的數據海之中,萃取出對自己工作有價值的洞察,進而做出智慧決策、提升執行效率。資料量的快速成長,也推動資料清洗工具市場的成長,根據The Business Research Company調查發現預計到2028年,資料清洗工具市場規模將以17%年複合成長率(CAGR)增長到58億美元。

本文以下將探討資料清洗的概念,接著列舉資料清洗的常見流程步驟與工具,藉此幫助更多人理解資料清洗的價值。
 

資料清洗的定義、挑戰及必要性

資料清洗(或稱數據清洗)核心的定義,就是針對數據集進行處理,手段包含對原始數據進行檢測、轉換或修正,是資料預處理(Data Preprocessing)過程其中一個環節。資料清洗的目的,就是要找出數據庫可能有資料格式不一致、數據錯誤、重複或有缺失值等問題,藉此提高數據品質,幫助後續在執行資料分析或建立AI模型的時候,才不會產生「Garbage in, Garbage out」狀況。

至於企業在展開資料清洗過程,多半會遇到哪些資料品質本身的挑戰?根據業界統計可以歸納出以下幾個常見問題:

過時/遺失的資料
有的資料雖然有保存,但沒有定期更新,導致資料的可用性大幅降低,例如客戶的E-mail、手機電話可能都有更換,即使保有資料但也難發揮價值。另一個會遇到資料遺失狀況,儘管資料欄位設計完整,但某些欄位卻是空白或亂碼,導致資料也無法使用。

格式不一的資料
因應資料設定的格式、單位,如果當初沒有統一規劃,或是延續舊系統而沒有更新現代化的格式標準,導致錯亂的數據表示方法。最常見的案例就是日期格式:YYYY-MM-DD跟MM/DD/YYYY的格式不同;或是有的格式用數字1234表示,有的用中文一二三四呈現,這類情況都會讓後續做數據分析時產生錯誤。

不完整或錯誤的資料
資料不完整也會讓模型要辨識或運算時不夠精準,例如要做CRM資料分析,消費者的姓名、電話、地址資料都有,但偏偏少了交易金額或交易時間這些欄位的數據,就無法洞察客單價跟交易頻率等趨勢。另外一個情況是數據明顯有錯誤,例如年齡欄位出現負數、西元紀年數字只有三位數,這些錯誤數據也都會影響分析結果。

其他情況
除了上述資料問題,其他還包含數據出現極端值、同一筆數據重複出現多次、人工輸入數據拼寫錯誤、數據系統故障導致資料有損壞等情況。

綜觀上述各類情況如果沒有適度排除問題,以及進行資料清洗,小問題可能遇到分析結果不準確,或模型訓練不穩定,降低機器學習模型的預測效果,大致可能浪費企業資源及時間,後續就要耗費更多人力及成本來處理資料問題。所以資料清洗的必要性可以兼顧以下元素:
  1. 確保數據分析準確度、更能反映真實情況
  2. 後續分析和模型建立可以縮短開發周期
  3. 維持機器學習模型效能、降低模型錯誤
  4. 結合商業智能(BI)提供管理層決策依據
  5. 企業挖掘隱藏訊息有助於開發新業務與商機
  6. 確保資料的合規性,持續獲得客戶信任度
 
 

資料清洗策略擬定及步驟

進行實際資料清洗步驟之前,企業應該建立一套明確的資料清洗策略,讓資料科學家和機器學習工程師可以依循,進而實際展開後續步驟及實際的工具方法,才能因應不同資料內容做靈活的運用。因此在資料清洗前的策略腳本,根據業界具經驗的資料科學家綜合出以下幾點資料清洗的步驟建議

步驟一 足夠認識資料
充分掌握企業內部的數據的來源、結構、收集過程、特性和限制,有完整的前置作業跟檢查,能幫助後續步驟不會掛一漏萬。

步驟二 鎖定清洗的目標
接著聚焦出明確的資料清洗目標是什麼,前置工程就會根據目標,開始著手處理資料缺失值、重複值、異常值等問題;如果遇到缺失值就需要填補,或針對重複值做刪除或合併等作業。

步驟三 檢查資料一致性/標準化
經過上面的初步處理,這時候需要針對資料再次進行檢查,確保資料欄位是否有足夠完整;另外也要確認資料格式是否一致性、以及欄位之間的關係,是否統一化數據呈現方式,這個環節把關越嚴謹才能更加確保之後分析的品質。

步驟四 進入資料清洗及處理
這時候企業進入資料清洗流程,包含針對資料進行排序、過濾、聚合等工程操作,讓數據真正達到轉換和有效處理。這個階段也會因應資料分析的目的需求,選擇對應的資料清洗工具、技術方法論,藉由分批階段來完成資料清洗作業。

步驟五 資料測試及驗證
資料清洗作業完成後,針對清洗結果企業要進行結果的測試和驗證。目的是比對清洗前後的資料內容,驗證資料符合當時資料清洗時所下指令的標準規範。這階段的資料驗證,也可以用來把關資料是否觸及個資隱私等法規政策紅線,避免碰觸到法律和道德風險問題。

步驟六 打造可持續的監控機制
最後一個階段要讓企業內部可以定期檢查資料品質,進而建立起持續監控資料的機制。未來如果機器學習有偵測到資料格式或數據問題,就可以及時發現和修正,藉此定期自動化資料清洗的手段,讓資料庫的數據更為完整與乾淨。
 

資料清洗工具介紹

綜觀目前市面會依據程式碼的差異,以及資料格式的不同,而衍生出各種資料清洗工具和技術,以下列舉幾個比較常見的工具:

  • Excel:適合應用在小規模數據,可以透過進階函數、格式化條件、樞紐分析表等功能來初步清理資料。
  • Python:具備多樣化的函式庫及工具來處理數據,例如核心工具有Pandas(處理結構化數據表格)、NumPy(可以測或替換異常值)。
  • SQL:SQL是資料管理的重要工具,適合處理大型數據庫,在資料清洗方面可以用來刪除重複值、處理空值、標準化數據、驗證數據等指令。
  • 其他專門進行資料清洗工具:OpenRefine(一款專門為資料清洗與資料轉換設計的開源工具,能有效處理結構化數據或半結構化數據)、Trifacta(專為數據科學家、分析師以及業務用戶設計,用於簡化並加速資料清洗過程)。

企業除了會使用上述幾個數據資料庫及資料清洗工具,鄧白氏的數據治理解決方案也能提供資料清洗資源,用來解決不及時、重複值的問題數據。更重要的是除了資料清洗之外,企業想要結構化監控數據品質,鄧白氏的數據治理解決方案能幫企業從360度的數據視角,包含檢視供應商、客戶與合作夥伴的最新資訊,藉由數據驅動決策,有效提升商業洞察力。
 

TOP