python异常值处理箱型图_如何利用python处理异常值?
在數(shù)據(jù)清洗階段,我們需要找到異常值,并對(duì)其進(jìn)行相應(yīng)的一些處理。在python中,異常值的處理常常需要結(jié)合一些數(shù)據(jù)模型或概率分布來解決。下面做一個(gè)簡單的介紹。
1.打開pycharm開發(fā)工具,在運(yùn)行窗口輸入命令:
import pandas as pd #導(dǎo)入pandas庫
2.輸入數(shù)據(jù)集。
data=pd.DataFrame({'name':['A','B','C','D','E','F','G'],'cost':[2,127,4,6,3,13,14],'sales':[13,18,32,54,23,33,44]})
print(data)
3.通過z-score方法判斷異常值,即對(duì)原始值X進(jìn)行正態(tài)標(biāo)準(zhǔn)化:(X-mean(X))/std(X),根據(jù)計(jì)算的結(jié)果判斷樣本值與中心的偏離程度。
df1=data.copy()#為了不影響原始數(shù)據(jù)集,復(fù)制數(shù)據(jù)集data
print(df1)
4.按列計(jì)算均值和標(biāo)準(zhǔn)差。
df1['cost']=(df1['cost']-df1['cost'].mean())/df1['cost'].std()#標(biāo)準(zhǔn)化cost_z列
5.對(duì)sales列進(jìn)行標(biāo)準(zhǔn)化。
df1['sales']=(df1['sales']-df1['sales'].mean())/df1['sales'].std()#標(biāo)準(zhǔn)化cost_z列
df1['sales']
6.查看標(biāo)準(zhǔn)化后的數(shù)據(jù)集。
print(df1)
標(biāo)準(zhǔn)化后的絕對(duì)值越大,數(shù)據(jù)越有可能異常,是否異常根據(jù)設(shè)定的閾值判斷。
7.假設(shè)cost列閾值為2,通過下面的方法找到異常值。
df1['cost'].abs()>2#判斷數(shù)據(jù)是否異常
data[df1['cost'].abs()>2]#取出原數(shù)據(jù)集中的異常點(diǎn)
?
總結(jié)
以上是生活随笔為你收集整理的python异常值处理箱型图_如何利用python处理异常值?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab phog,科学网—UCF
- 下一篇: Linux-0.00 代码解析(三)