天天看點

《R語言資料挖掘》----1.11 資料清洗

資料清洗是資料品質的一部分,資料品質(data quality,dq)的目标如下:

準确性(資料被正确記錄)。

完整性(所有相關資料都被記錄)。

唯一性(沒有重複的資料記錄)。

時效性(資料不過時)。

一緻性(資料是一緻的)。

資料清洗試圖填補缺失值、發現異常值同時平滑噪聲、修正資料中的不一緻性。資料清洗通常是一個兩步疊代的過程,由差異檢測和資料變換構成。

在大多數情況下,資料挖掘的過程都包含如下兩個步驟:

第一步對源資料集進行測試以便發現差異。

第二步是選擇變換方法來修正資料(基于要修正屬性的準确性以及新值與原始值的接近程度)。然後應用變換來修正差異。

在從各類資料源擷取資料的過程中,當某些字段為空或者包含空值時會存在許多情況。好的資料錄入程式應該盡量避免或者最小化缺失值或錯誤的數目。缺失值與預設值是無法區分的。

如果某些字段存在缺失值,那麼有一些解決方案——每種解決方案都有不同的考慮與缺陷,并且每種方案在特定情況下都是可用的。

忽略元組:由于忽略元組,除了那個缺失值以外,你也不能使用剩餘的值。

這種方法隻适用于當元組包含的一些屬性有缺失值或者每個屬性缺失值的百分比變化不大時。

人工填補缺失值:對于大型資料集,該方法并不适用。

使用全局常量填補缺失值(use a global constant to fill the value):使用該常量填補缺失值可能會誤導挖掘過程,并不十分安全。

使用屬性集中趨勢的度量來填補缺失值:集中趨勢的度量可用于對稱資料分布。

使用屬性均值或者中位數:當給定元組時,對于屬于同一類的所有樣本使用屬性均值或者中位數。

使用最可能的值來填補缺失值:缺失值可以用回歸或者基于推理的工具,比如貝葉斯形式或者決策樹歸納所确定的資料進行填補。

最流行的方法是最後一種方案,它基于目前值以及源于其他屬性的值。

正如在實體測試或者統計測試中,噪聲是發生在擷取測量資料的測試過程中的一個随機誤差。對于資料收集的過程,不管你使用什麼方法,噪聲都不可避免地存在。

用于資料平滑的方法如下所述。随着資料挖掘研究的發展,新的方法也不斷出現。

分箱:這是一個局部範圍平滑的方法,在該方法中,使用近鄰值計算特定箱子的終值。已排序的資料分布到多個箱子中,箱子中的每個值将被基于近鄰值來計算出的值所取代。計算可以是箱子的中位數、箱子的邊界,即箱子的邊界資料。

回歸:回歸的目标是找到最佳曲線或者多元空間中某個類似于曲線的東西(函數)。是以,其他值可以用于預測目标屬性或者變量的值。在其他方面,這是一種比較流行的平滑方法。

分類或者異常檢測:分類器是發現噪聲或者異常的另一種固有方法。在分類過程中,除了異常值外,大部分源資料将被分組到幾個類中。

繼續閱讀