python - 如何使用 pandas DataFrame 检测偏差?
问题描述
我有一些包含 5 列和 1000 行的数据。现在我刚刚选择了 3 个随机行:
5 5 5 0.1 0.2
4 4 4 4 0.3
4 3 3 3 1
如何检测每行的偏差?例如,第一行有两个 0,第二行有一个 0。我尝试使用均值,但这不是正确的解决方案。
解决方案
你可以这样做:
n=3
new_df=df.loc[:,~(df.diff(axis=1).abs()>n).any()]
print(new_df)
col1 col2 col3
0 5.0 5.0 5.0
1 4.0 4.0 4.0
2 4.0 3.0 3.0
new_df=df.loc[:,(df.diff(axis=1).abs()>n).any()]
print(new_df)
col4 col5
0 0.1 0.2
1 4.0 0.3
2 3.0 1.0
你可以选择你想要的间隔。
差异
print(df.diff(axis=1).abs())
col1 col2 col3 col4 col5
0 NaN 0.0 0.0 4.9 0.1
1 NaN 0.0 0.0 0.0 3.7
2 NaN 1.0 0.0 0.0 2.0
推荐阅读
- dji-sdk - 时间线任务加载延迟
- tensorflow - 有没有办法保存应用的 Keras 辍学张量以供将来使用?
- oracle - 从 Oracle 报告 11g 中的对象导航器中删除对象
- r - 如何在一个条形图中显示 2 组堆叠数据
- python - Python - 遍历嵌套的 json 并保存值
- c - execl() 在参数中使用整数 (ping)
- java - 有没有办法在 Java 中通过 USB 输出布尔值?
- python - 比较一个列表和一个包含 numpy 数组的元组
- java - 在父线程中的 Android Studio Java 中播放多个短声音
- java - 为什么Spring boot + PostgreSQL(11)使用id策略Identity的Entity会抛出错误?