熱線電話:13121318867

登錄
首頁精彩閱讀數據挖掘中常用的數據清洗方法
數據挖掘中常用的數據清洗方法
2018-03-01
收藏

數據挖掘中常用的數據清洗方法

對于數據挖掘來說,80%的工作都花在數據準備上面,而數據準備,80%的時間又花在數據清洗上,而數據清洗的工作,80%又花在選擇若干種適當高效的方法上。用不同方法清洗的數據,對后續挖掘的分析工作會帶來重大影響。

1、數值化
由于原始數據往往存在各種不同格式的數據形式,比如如果你要處理的數據是數值型,但是原始數據也許有字符型或者其他,那就要對其進行標準化操作。處理的方式可以很簡單也可以很復雜,我采取過的一個方法是:對字符串取值,按照ANSI碼值求和得到字符串的值,如果值太大,可以取一個適當的質數對其求模,本質上就是映射到一個區間了。然后就得到數值型的數據了。

2、標準化 normalization
由于原始數據各個維度之間的數值往往相差很大,比如一個維度的最小值是0.01,另一個維度最小值卻是1000,那么也許在數據分析的時候,計算相關性或者方差啥的指標,后者會掩蓋了前者的作用。因此有必要對整體數據進行歸一化工作,也就是將它們都映射到一個指定的數值區間,這樣就不會對后續的數據分析產生重大影響。我采取過的一個做法是:min-max標準化。

3、降維
由于原始數據往往含有很多維度,也就是咱們所說的列數。比如對于銀行數據,它往往就含有幾十個指標。這些維度之間往往不是獨立的,也就是說也許其中之間若干的維度之間存在關聯,也許有他就可以沒有我,因此咱們可以使用數據的相關性分析來降低數據維度。我使用過的一個方法是:主成分分析法。

4、完整性:

解決思路:數據缺失,那么補上就好了。
補數據有什么方法?

- 通過其他信息補全,例如使用身份證件號碼推算性別、籍貫、出生日期、年齡等
- 通過前后數據補全,例如時間序列缺數據了,可以使用前后的均值,缺的多了,可以使用平滑等處理,記得Matlab還是什么工具可以自動補全

- 實在補不全的,雖然很可惜,但也必須要剔除。但是不要刪掉,沒準以后可以用得上

- 解決數據的唯一性問題

解題思路:去除重復記錄,只保留一條。
去重的方法有:

- 按主鍵去重,用sql或者excel“去除重復記錄”即可,
- 按規則去重,編寫一系列的規則,對重復情況復雜的數據進行去重。例如不同渠道來的客戶數據,可以通過相同的關鍵信息進行匹配,合并去重。

- 解決數據的共識性問題
解題思路:用最權威的那個渠道的數據
方法:
對不同渠道設定權威級別,例如:在家里,首先得相信媳婦說的。。。

- 解決數據的合法性問題
解題思路:設定判定規則

- 設定強制合法規則,凡是不在此規則范圍內的,強制設為最大值,或者判為無效,剔除

- 字段類型合法規則:日期字段格式為“2010-10-10”
- 字段內容合法規則:性別 in (男、女、未知);出生日期<=今天

    設定警告規則,凡是不在此規則范圍內的,進行警告,然后人工處理

    - 警告規則:年齡》110
   
    離群值人工特殊處理,使用分箱、聚類、回歸、等方式發現離群值
        解決數據的一致性問題

解題思路:建立數據體系,包含但不限于:

- 指標體系(度量)
- 維度(分組、統計口徑)
- 單位
- 頻度
- 數據


數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢