計算機審計中電子數據清洗的主要步驟
(一)定義和確定錯誤的類型。
1.數據分析。數據分析是數據清洗的前提與基礎,通過詳盡的數據分析來檢測數據中的錯誤或不一致情況,除了手動檢查數據或者數據樣本之外,還可以使用分析程序來獲得關于數據屬性的元數據,從而發現數據集中存在的質量問題。
2.定義清洗轉換規則。根據上一步進行數據分析得到的結果來定義清洗轉換規則與工作流。根據數據源的個數,數據源中不一致數據和“臟數據”多少的程度,需要執行大量的數據轉換和清洗步驟。要盡可能的為模式相關的數據清洗和轉換指定一種查詢和匹配語言,從而使轉換代碼的自動生成變成可能。
(二)搜尋并識別錯誤的實例。
1.自動檢測屬性錯誤。檢測數據集中的屬性錯誤,需要花費大量的人力、物力和時間,而且這個過程本身很容易出錯,所以需要利用高的方法自動檢測數據集中的屬性錯誤,方法主要有:基于統計的方法、聚類方法、關聯規則的方法。
2.檢測重復記錄的算法。消除重復記錄可以針對兩個數據集或者一個合并后的數據集,首先需要檢測出標識同一個現實實體的重復記錄,即匹配過程。檢測重復記錄的算法主要有:基本的字段匹配算法,遞歸的字段匹配算法,Smith—Waterman算法,Cosine相似度函數。
(三)糾正所發現的錯誤。在數據源上執行預先定義好的并且已經得到驗證的清洗轉換規則和工作流。當直接在源數據上進行清洗時,需要備份源數據,以防需要撤銷上一次或幾次的清洗操作。清洗時根據“臟數據”存在形式的不同,執行一系列的轉換步驟來解決模式層和實例層的數據質量問題。為處理單數據源問題并且為其與其他數據源的合并做好準備,一般在各個數據源上應該分別進行幾種類型的轉換,主要包括:
1.從自由格式的屬性字段中抽取值(屬性分離)。自由格式的屬性一般包含著很多的信息,而這些信息有時候需要細化成多個屬性,從而進一步支持后面重復記錄的清洗。
2. 確認和改正。這一步驟處理輸入和拼寫錯誤,并盡可能地使其自動化。基于字典查詢的拼寫檢查對于發現拼寫錯誤是很有用的。
3. 標準化。為了使記錄實例匹配和合并變得更方便,應該把屬性值轉換成一個一致和統一的格式。
(四)數據回流。當數據被清洗后,干凈的數據應該替換數據源中原來的“臟數據”。這樣可以提高原系統的數據質量,還可避免將來再次抽取數據后進行重復的清洗工作。