資料清洗是指發現並糾正資料檔案中可識別的錯誤,包括檢查資料一致性,處理無效值和缺失值等。
空值一般表示資料未知、不適用或將在以後新增的資料。空值一般用none表示,缺失值一般用nan表示。
1、在pandas中使用isnull() 和 notnull() 函式可以判斷資料集中是否存在空值和缺失值.
isnull()語法格式如下:pandas.isnull(arr)表示檢查arr中的空值,一旦發現存在nan(缺失值)或者none(空值)時將這個位置標為true,否則就標記為false
notnull()函式和 isnull() 函式一樣,不同之處在於返回結果相反。
2、在pandas中使用 dropns() 刪除含有空值或者缺失值的行或者列。
3、填充空值或者缺失值。
在pandas中使用fillna()可以實現填充值或缺失值。
4、重複值的處理
通過duplicated()方法處理重複值
5、異常值處理
異常值一般值樣本中的個別值比較極端,其資料明顯偏離樣本中的其他值。
常用的方法有拉依達準則
和基於箱形圖檢測異常值兩種
6、更改資料型別
可以在建立pandas時明確指定資料型別,也可通過astype() 和 to_numberic()函式進行轉換
1、軸向堆疊資料
concat()函式可以沿著一條軸將多個物件進行堆疊。根據軸方向的不同,可分為縱向堆疊和橫向堆疊。
2、主鍵合併資料
merge()
3、根據行索引合併資料
join()
4、合併重疊資料
combine_fiest()
有時候需要將dataframe物件轉換為series物件,為此,pandas提供了資料重塑的功能,包括:「重塑層次化索引」和「軸向索引」
1、重塑層次化索引
stack()將資料的列 旋轉 為行。
unstack()將資料的行 旋轉 為列。
2、軸向索引
dataframe.pivot(index=none, columns=none, values=none)
資料轉換是指從一種表現形式變為另一種表現形式的過程,具體包括:
1、重新命名軸索引
rename()
2、離散化連續資料
cut()
3、啞變數處理類別型資料
get_dummies()
資料預處理
現實世界中資料大體上都是不完整,不一致的髒資料,無法直接進行資料探勘,或挖掘結果差強人意。為了提前資料探勘的質量產生了資料預處理技術。資料預處理有多種方法 資料清理,資料整合,資料變換,資料歸約等。這些資料處理技術在資料探勘之前使用,大大提高了資料探勘模式的質量,降低實際挖掘所需要的時間。一 資料清...
資料預處理
常見的資料預處理方法,以下通過sklearn的preprocessing模組來介紹 變換後各維特徵有0均值,單位方差。也叫z score規範化 零均值規範化 計算方式是將特徵值減去均值,除以標準差。sklearn.preprocessing scale x 一般會把train和test集放在一起做標...
資料預處理
用cut函式分箱 有時把數值聚集在一起更有意義。例如,如果我們要為交通狀況 路上的汽車數量 根據時間 分鐘資料 建模。具體的分鐘可能不重要,而時段如 上午 下午 傍晚 夜間 深夜 更有利於 如此建模更直觀,也能避免過度擬合。這裡我們定義乙個簡單的 可復用的函式,輕鬆為任意變數分箱。def binni...