在 pandas 中筛选特定行有多种方式,下面按常见场景给你总结一下(都基于 DataFrame)。
import pandas as pd
df = pd.DataFrame({
'name': ['A', 'B', 'C', 'D'],
'age': [20, 25, 30, 35],
'score': [80, 90, 70, 85]
})
df[df['age'] > 25]
&、|)df[(df['age'] > 25) & (df['score'] > 80)]
⚠️ 注意:多个条件一定要加括号
df[df['name'].isin(['A', 'C'])]
反向筛选:
df[~df['name'].isin(['A', 'C'])]
df.iloc[0:2] # 前两行
df.loc[1:3]
df[df['name'].str.contains('A')]
忽略大小写:
df[df['name'].str.contains('a', case=False)]
df[df.apply(lambda x: x['age'] + x['score'] > 100, axis=1)]
df.query("age > 25 and score > 80")
df_filtered = df[df['age'] > 25]
或直接修改原表:
df = df[df['age'] > 25]
如果你有具体的数据结构或筛选条件,可以直接贴出来,我可以帮你写精确的代码。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。