You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中删除DataFrame指定id分组的所有行?

删除Pandas DataFrame中指定ID的行(保留ID=1和3)

有几种简单的方法可以实现只保留id=1和id=3的行,删除id=2和id=4的行:

方法1:布尔索引直接筛选

直接通过布尔索引筛选出id属于目标列表的行,这是最直观的方式:

# 筛选并保留id为1和3的行,生成新的DataFrame
filtered_df = df[df['id'].isin([1, 3])]
print(filtered_df)

方法2:用drop删除指定行

先定位到需要删除的行的索引,再调用drop方法移除它们:

# 获取id为2或4的行的索引
drop_rows = df[df['id'].isin([2, 4])].index
# 删除这些行,如果想直接修改原DataFrame就加inplace=True,否则返回新对象
df_cleaned = df.drop(drop_rows)
print(df_cleaned)

提示:如果不想修改原始的df,别用inplace=True,直接把结果赋值给新变量就行。

方法3:用query方法简洁筛选

query方法支持用字符串表达式筛选,代码更简洁:

filtered_df = df.query('id in [1, 3]')
print(filtered_df)

内容的提问来源于stack exchange,提问作者NN_Developer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 02:32:45