小呆學資料分析 缺失值處理(一)

2021-09-24 05:35:13 字數 2765 閱讀 4264

在收集資料的時候常常會遇到資料缺失,可能由於漏填,可能由於感測器故障,也可能就是邏輯上應該的(比如未婚女生問卷上先生一欄肯定是空出來的缺失值)。不管如何缺失值需要在進一步資料分析前要進行相應的處理。

預覽本節處理缺失值採用了以下幾個方案:

剔除用固定值補充

用平均數補充 例子

小呆被交代一項任務,統計一下這個星期各個洗髮露的銷量,小呆開啟營銷同事的記錄本shampoo_sales.csv,看到

shampoo_sales.csv

品牌,日期,銷量

沙宣,星期一,200

沙宣,星期二,185

沙宣,星期三,

沙宣,星期四,210

沙宣,星期五,201

沙宣,星期六,223

沙宣,星期日,195

欸,星期三的銷量怎麼沒有了,可能是銷售人員忘填了吧,算了先導入再說,於是寫下**

import pandas as pd

sales = pd.read_csv(

'shampoo_sales.csv'

, encoding =

'gb2312'

)sl2 = sales.set_index(

['品牌'

,'日期'])

.unstack(

)print

(sl2)

結果如下:

銷量                                       

日期 星期一 星期二 星期三 星期四 星期五 星期六 星期日

品牌

沙宣 200.0 185.0 nan 210.0 201.0 223.0 195.0

這個星期三的銷量是缺失的,怎麼辦?要不就刪除了吧,於是小呆寫下**

sl3 = sl2.dropna(

)print

(sl3)

結果如下:

銷量                                       

日期 星期一 星期二 星期四 星期五 星期六 星期日

品牌

沙宣 200.0 185.0 210.0 201.0 223.0 195.0

好像缺少了星期三也怪怪的,那這個星期三的缺失值應該怎麼補呢?小呆有點犯難,要不拿去年的日銷量補一下,小呆寫下**

sl2[sl2.isna()]

=100

print

(sl2)

結果如下:

銷量                                       

日期 星期一 星期二 星期三 星期四 星期五 星期六 星期日

品牌

沙宣 200.0 185.0 100.0 210.0 201.0 223.0 195.0

這好像差別有點大啊,對了,這週在搞**,看來用去年的日銷量好像不太對,那要不就用這週的平均數吧,於是小呆把上面兩行**刪掉,重新寫下**

sl2[sl2.isna()]

= sales.dropna(

).mean()[

'銷量'

]print

(sl2)

結果如下:

銷量                                       

日期 星期一 星期二 星期三 星期四 星期五 星期六 星期日

品牌

沙宣 200.0 185.0 202.333333 210.0 201.0 223.0 195.0

嗯,這樣看起來差不多了,於是小呆把整理好的結果交了上去。

小瓜講機器學習——分類演算法(一)logistic regression(邏輯回歸)演算法原理詳解

小瓜講機器學習——分類演算法(二)支援向量機(svm)演算法原理詳解

小瓜講機器學習——分類演算法(三)樸素貝葉斯法(***** bayes)待續

資料分析

小呆學資料分析——使用pandas中的merge函式進行資料集合並

小呆學資料分析——使用pandas中的concat函式進行資料集堆疊

小呆學資料分析——pandas中的層次化索引

小呆學資料分析——使用pandas的pivot進行資料重塑

小呆學資料分析——用duplicated/drop_duplicates方法進行重複項處理

小呆學資料分析——缺失值處理(一)

小呆學資料分析——異常值判定與處理(一)

小瓜講資料分析——資料清洗

資料視覺化

小瓜講資料分析——資料視覺化工程(matplotlib庫使用基礎篇)

小瓜講matplotlib高階篇——座標軸設定(座標軸居中、座標軸箭頭、刻度設定、標識設定)

小呆學資料分析 異常值判定與處理(一)

在收集資料的過程中,可能由於人為錄入錯誤等原因,會出現明顯不合法的資料,需要在進一步分析之前對這些值進行判定並且處理,才能得到合理的資料分析和挖掘的結果。預覽對異常值採用以下方案判定 區間判定 普通統計量 箱型圖判定 例子 小呆被交代一項任務,統計一下這個星期各個洗髮露的銷量,小呆開啟營銷同事的記錄...

資料分析中的缺失值處理

沒有高質量的資料,就沒有高質量的資料探勘結果,資料值缺失是資料分析中經常遇到的問題之一。當缺失比例很小時,可直接對缺失記錄進行捨棄或進行手工處理。但在實際資料中,往往缺失資料占有相當的比重。這時如果手工處理非常低效,如果捨棄缺失記錄,則會丟失大量資訊,使不完全觀測資料與完全觀測資料間產生系統差異 對...

資料分析中的缺失值處理

沒有高質量的資料,就沒有高質量的資料探勘結果,資料值缺失是資料分析中經常遇到的問題之一。當缺失比例很小時,可直接對缺失記錄進行捨棄或進行手工處理。但在實際資料中,往往缺失資料占有相當的比重。這時如果手工處理非常低效,如果捨棄缺失記錄,則會丟失大量資訊,使不完全觀測資料與完全觀測資料間產生系統差異 對...