前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Pandas异常值处理

Pandas异常值处理

作者头像
hankleo
发布2020-09-17 10:14:59
5090
发布2020-09-17 10:14:59
举报
文章被收录于专栏:Hank’s BlogHank’s Blog
代码语言:javascript
复制
import pandas as pd

#生成异常数据
df=pd.DataFrame({'col1':[1,120,3,5,2,12,13],
                'col2':[12,17,31,53,22,32,43]})

print(df)
   col1  col2
0     1    12
1   120    17
2     3    31
3     5    53
4     2    22
5    12    32
6    13    43

df_zscore=df.copy() #复制一个用来存储Z-score得分的数据框
cols=df.columns
for col in cols:
    df_col=df[col]
    z_score=(df_col - df_col.mean()) / df_col.std() #计算每列的Z-score得分
    df_zscore[col] = z_score.abs() > 2.2 #判断Z-score得分是否大于2.2,如果是则为True,否则为False

#打印,为True即异常值
print(df_zscore)
    col1   col2
0  False  False
1   True  False
2  False  False
3  False  False
4  False  False
5  False  False
6  False  False

#获取无异常值的数据
df_drop_outlier=df[df_zscore['col1']==False]

#打印
print(df_drop_outlier)
   col1  col2
0     1    12
2     3    31
3     5    53
4     2    22
5    12    32
6    13    43
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档