python - 在python中使用两个条件过滤数据框
问题描述
我想使用两种不同的条件过滤数据框。
但我想省略不满足条件的行,只想保留在 A 列中至少出现两次的值
df1 = df[(df['A-B occurrence'] >= 3) & (df['A occurrence'] >= 2)]
以上是我正在使用的代码,这是我得到的输出:
因此,在 A 列中,17 仅在一行中满足条件,所以我想全部省略 17,因为它不满足条件,这意味着我只想保留 A 列中存在的重复值 2 或超过 2次
解决方案
IIUC 您只想保留A
重复的行。
您可以使用:
df2 = df1[df1['A'].duplicated(keep=False)]
输出:这应该删除索引为 14 (A=17) 和 19 (A=19) 的行
注意。如果需要,您可以在其他列上应用相同的策略
推荐阅读
- javascript - 使用 Date.toLocaleTimeString 和 Date.toLocaleDateString 进行日期光节约调整
- python - 使用前一个/下一个值循环遍历 DataFrame
- r - 将矩阵从非正方形转换为具有不同列名的正方形
- swift - 同步问题 Gamekit
- python-3.x - 使用调度程序调度 .pyc 文件
- karate - 如何从空手道的响应标头中提取双引号中的值
- excel - 如何更改excel单元格中一个单词的字体颜色?
- c# - 如何使用 linq 将 DATETIME 类型的列转换为字符串
- javascript - UnhandledPromiseRejectionWarning: TypeError: msg.creatReactionCollector 不是函数
- r - R EnhancedVolcano plot SelectLab - 不会出现重叠的标签