數據清洗
在建模的時間與精力分配中,數據的理解、整理與準備佔據了整個工作的80%工作量。因此,提高數據準備工作的效率可以將更重要的時間分配到模型研究上,從而提升數據建模的效率與正確率。
數據的整理與準備:
- 缺失值識別與處理
- 異常值識別與處理
- 重複值識別與處理
- 數值替換
- 行列名變更
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:數據分析 |