ITPub博客

首页 > 应用开发 > Python > 如何在Pandas中进行多条件筛选?

如何在Pandas中进行多条件筛选?

原创 Python 作者:mingtian66 时间:2024-09-23 15:44:51 0 删除 编辑

在Pandas中进行多条件筛选非常灵活,可以使用逻辑运算符(如&和|)来组合多个条件。以下是一些常见的方法和示例:
1. 使用逻辑运算符
示例数据框

python

import pandas as pd

data = {
    '姓名': ['Alice', 'Bob', 'Charlie', 'David'],
    '年龄': [24, 30, 22, 35],
    '城市': ['北京', '上海', '北京', '广州'],
    '收入': [7000, 9000, 6000, 12000]
}

df = pd.DataFrame(data)

多条件筛选

    条件1: 年龄大于25
    条件2: 收入大于8000

python

# 使用 & 进行与操作
result = df[(df['年龄'] > 25) & (df['收入'] > 8000)]
print(result)

2. 使用query()方法

query()方法可以使用更简洁的语法来进行条件筛选。

python

result = df.query('年龄 > 25 and 收入 > 8000')
print(result)

3. 使用isin()方法

如果想要筛选某一列中的多个值,可以使用isin()方法。

python

# 筛选城市为北京或上海的人
result = df[df['城市'].isin(['北京', '上海'])]
print(result)

4. 结合多个条件

可以将不同的逻辑运算符结合使用。

python

# 筛选年龄大于25且收入大于8000,或城市为广州
result = df[((df['年龄'] > 25) & (df['收入'] > 8000)) | (df['城市'] == '广州')]
print(result)

5. 使用loc进行筛选

使用loc可以更直观地进行筛选。

python

result = df.loc[(df['年龄'] > 25) & (df['收入'] > 8000)]
print(result)

注意事项

    使用&和|时,条件需要用括号括起来。
    确保数据框列名没有空格或特殊字符,避免引发错误。

这样,你就可以在Pandas中灵活地进行多条件筛选了!

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70040412/viewspace-3028876/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2024-08-07

  • 博文量
    589
  • 访问量
    602823