pandas - 删除不等于条件的行
问题描述
我正在尝试创建一个新的数据框,该数据框会从现有数据框中删除某些记录段。
df2=df[df['AgeSeg']!='0-1']
当我查看 df2 时,“0-1”年龄段的记录仍然存在。
我希望新的数据框没有它们。我究竟做错了什么?
解决方案
您可以使用isin
(https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.isin.html)
简单的例子:
import pandas as pd
df = pd.DataFrame({'col1': [1, 2, 3, 2, 9], 'col2': [4, 5, 6, 3, 0]})
df = df[df['col1'].isin([2]) != True]
df 之前:
col1 col2
0 1 4
1 2 5
2 3 6
3 2 3
4 9 0
df 之后:
col1 col2
0 1 4
2 3 6
4 9 0
推荐阅读
- javascript - 通过异步方法可以使用 _.sumBy
- mysql - 使用 2 个连接创建视图时出现问题
- javascript - 运行 Angular 8 生产时:在严格模式下删除不合格的标识符
- javascript - Angular主js文件被截断?
- flutter - How to make widget out of a GestureDetector with a Container child?
- java - 具有相同类的多个@ConfigurationProperties
- mongodb - 更新文档内的嵌套集合 - MongoDB
- java - 如何在 google sheet java api 中 BatchUpdateSpreadsheetRequest 一个特定的工作表选项卡?
- bazel - bazel print the versions/tags/hash for all dependencies of a target
- javascript - 对 innerHTML 的调用包含跨站点脚本 (XSS)