温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样用pandas筛选特定行

发布时间:2026-11-04 09:31:08 来源:亿速云 阅读:97 作者:小樊 栏目:编程语言

在 pandas 中,筛选特定行通常有以下几种常见方式,按使用场景从简单到灵活说明:


1️⃣ 按条件筛选(最常用)

import pandas as pd

df = pd.DataFrame({
    'name': ['A', 'B', 'C'],
    'age': [20, 35, 28]
})

# 筛选 age > 25 的行
df_filtered = df[df['age'] > 25]

✅ 支持多个条件(注意加括号):

df[(df['age'] > 25) & (df['name'] != 'C')]

2️⃣ 使用 query()(代码更简洁)

df_filtered = df.query("age > 25 and name != 'C'")

适合条件较复杂、可读性要求高的场景。


3️⃣ 按某列的值筛选(isin)

df[df['name'].isin(['A', 'C'])]

反向筛选:

df[~df['name'].isin(['A'])]

4️⃣ 按索引筛选

df.loc[0]          # 第 0 行
df.loc[0:2]        # 0~2 行
df.iloc[1:3]       # 按位置

5️⃣ 按字符串内容筛选

df[df['name'].str.contains('A')]

6️⃣ 删除 / 保留满足条件的行

df = df[df['age'] >= 18]   # 保留成年

7️⃣ 按函数筛选(apply)

df[df.apply(lambda row: row['age'] % 2 == 0, axis=1)]

✅ 小结

场景 推荐方式
简单条件 df[条件]
多条件 `& /
字符串 str.contains
可读性高 query()
批量值 isin

如果你有具体数据或筛选规则,可以直接发出来,我可以帮你写精确代码。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手