• 技术文章 >Python技术 >Python基础教程

    python中如何处理异常值

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2019-12-20 11:25:12原创5245

    打开pycharm开发工具,在运行窗口输入命令:

    import pandas as pd #导入pandas库

    e9265e06a750e5a33fb0973af98b2c5.png

    输入数据集。

    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)

    通过z-score方法判断异常值,即对原始值X进行正态标准化:(X-mean(X))/std(X),根据计算的结果判断样本值与中心的偏离程度。

    df1=data.copy()#为了不影响原始数据集,复制数据集data
    print(df1)

    f4859e375c9ce996286a6d0e5baf03a.png

    按列计算均值和标准差。

    df1['cost']=(df1['cost']-df1['cost'].mean())/df1['cost'].std()#标准化cost_z列

    对sales列进行标准化。

    df1['sales']=(df1['sales']-df1['sales'].mean())/df1['sales'].std()#标准化cost_z列
    df1['sales']

    查看标准化后的数据集。

    print(df1)

    标准化后的绝对值越大,数据越有可能异常,是否异常根据设定的阈值判断。

    0a9e1a2b0d7242538564d5ed32d606f.png

    假设cost列阈值为2,通过下面的方法找到异常值。

    df1['cost'].abs()>2#判断数据是否异常
    data[df1['cost'].abs()>2]#取出原数据集中的异常点

    python学习网,大量的免费python视频教程,欢迎在线学习!

    专题推荐:python 处理 异常值
    上一篇:python如何表示结构体 下一篇:python 怎么读取xlsx文件

    相关文章推荐

    • 什么是网络协议• python中的去除重复项的操作• python中少见的函数map()和partial()• python的sort()排序方法• Python中的文件读写-理论知识

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网