python - 使用 AND 进行布尔过滤 - Pandas
问题描述
df
使用布尔运算符过滤以下内容时,我似乎无法获得正确的输出。我想要df
删除AND所在ID
的行。似乎正在删除不等于的字符串。<= 2
String
== A,B, or C
A,B, or C
df = pd.DataFrame({
'String' : ['A','F','B','C','D','A','X','C','B','D','A','Y','A','C','A','D','C','B'],
'ID' : [4,2,3,4,5,6,4,2,3,4,5,6,4,2,3,4,5,6],
})
df = df[~(df['ID'] <= 2) & (df['String'].isin(['A','B','C']))]
预期输出:
String ID
0 A 4
1 F 2
2 B 3
3 C 4
4 D 5
5 A 6
6 X 4
#7 C 2 Remove
8 B 3
9 D 4
10 A 5
11 Y 6
12 A 4
#13 C 2 Remove
14 A 3
15 D 4
16 C 5
17 B 6
解决方案
推荐阅读
- java - java.nio.file.AccessDeniedException:从系统路径检索图像时
- hadoop - 为什么 hadoop 发布的顺序与它们的编号不同?
- javascript - Phaser 3 设置 StaticGroup 不透明度
- java - UnfinishedStubbing 异常 Mockito
- php - Symfony 分析器仅记录异常
- javascript - 单击其他输入时在输入上触发jquery函数
- sql-server - 使用 Node.JS 和 SQL Server Always Encrypted 插入数据库时出错
- angular - ng-bootstrap 的 ngbDatepicker 不起作用
- javascript - 编写单个 JS 脚本以将 ID 分配给 HTML 中的输出
- android - 无导航编辑器 - Android Studio Canary 15 和 16