【问题标题】:Detecting outliers in df检测df中的异常值
【发布时间】:2018-12-06 01:37:54
【问题描述】:

我有几列数百行的数字数据集,看起来类似于:

a   |  b  |  c  |  d
1   |  3  |  .3 |  26
.02 | 32  |  5  |  2.6

我正在尝试使用std 检测异常值,我找到了这段代码:

df.a[((df.a - df.a.mean()) / df.a.std()).abs() > 2]

我想要为单个列做什么,我希望能够在一个循环中为整个df 做这件事吗?每列有不同的meanstd。这可能很简单,但我对这一切都很陌生。是否可以将df 中的异常值显示为值并在其他单元格(无异常值)Nan0 中显示?

非常感谢。

【问题讨论】:

    标签: python pandas outliers


    【解决方案1】:

    试试下面的代码:

    for col in df.columns:
        df[col] = df[col][((df[col] - df[col].mean()) / df.[col].std()).abs() > 2]
    

    【讨论】:

    • 有一个小错字,但除此之外就是我想要的,谢谢!!
    猜你喜欢
    • 2019-07-24
    • 1970-01-01
    • 2019-03-09
    • 2020-04-03
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-06
    相关资源
    最近更新 更多