標籤:

數據清洗

在建模的時間與精力分配中,數據的理解、整理與準備佔據了整個工作的80%工作量。因此,提高數據準備工作的效率可以將更重要的時間分配到模型研究上,從而提升數據建模的效率與正確率。

數據的整理與準備:

  1. 缺失值識別與處理
  2. 異常值識別與處理
  3. 重複值識別與處理
  4. 數值替換
  5. 行列名變更

import pandas as pdimport numpy as np

#1缺失值

數據缺失在數據建模中非常常見,幾乎每一次數據分析都會遇到。缺失值的處理一般涉及2個步驟:識別、處理。在pandas中為我們提供了isnull命令,可以非常方便的識別缺失值。

但如何處理缺失值,就需要根據實際情況討論了。

1.刪除

刪除手段主要應用於數據缺失很少或很多的極端情況。刪除命令常使用pandas中的dropna()完成。

  • 刪除缺失值所在行:數據缺失較少,且數據分布較為均勻,不適用眾數、均值補足

2.填補

從數據包含的廣度、建模的可靠度角度來看,在儘可能的情況下,都應優先考慮填補。

不同的缺失情況,應考慮不同的填補方式。

#2重複值

重複值處理通常較為簡單,僅需識別後進行刪除處理即可。

一般而言,對一行中所有變數值進行重複值識別。僅所有變數都相同的,為重複。

如果需要對某一列/幾列進行重複值刪除,可在drop_duplicates中表明,展示如下:

#3異常值

異常值處理也相對簡單,通常識別後進行刪除處理

識別方式主要有兩種,絕對值和散點圖可視化

1.絕對值識別主要用於純數值類的異常值識別

2.或者進行可視化識別,製作散點圖觀察

#4數據轉換

數據轉換可分為替換原值以及創造新值2種情況

替換原值可分為單值單替換,多值單替換,多值多替換三種情況,在單列上進行

#5行列名稱更改

在某些情況下,可能會將行列的index 名稱更改為更容易理解/合適的名稱

#創建示例data = pd.DataFrame(np.arange(12).reshape(3,4), index = [Ohio, Colorado, New York], columns=[one, two, three, four])


推薦閱讀:

R語言實戰第八章:回歸
Python進行電影數據分析及可視化
數據結構從0到1——初級篇
今日數據行業日報(2017.03.17)
惠眾在線行業情報|互聯網改變下的傳統節日

TAG:數據分析 |