已经有很多关于删除异常值的问题,但我无法用它们解决我的问题。
我想从 中删除带有异常值的行dataframe。
说,我有以下内容dataframe:
0 1 2 3 4 5 6 7
a 1 2 3 4 100 2 1 3
b 2 1 3 4 1 2 300 123
c 100 200 300 400 200 500 200 400
Run Code Online (Sandbox Code Playgroud)
对于 row,a我们可以假设 100 是异常值,所以我想删除a.
尽管 Row 中的所有值c都很高,但它们并不是该行本身的异常值,因此,我想保留它。
所以,基本上我想删除所有带有异常值的行。
我尝试调换 DF 并做了类似的事情
df = df[(np.abs(stats.zscore(df)) < 2).all(axis=1)],但没有成功
添加:axis=1zscore
df = df[(np.abs(stats.zscore(df, axis=1)) < 2).all(axis=1)]
print (df)
0 1 2 3 4 5 6 7
c 100 200 300 400 200 500 200 400
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
287 次 |
| 最近记录: |