Pandas中如何进行数据筛选与条件判断

发布时间:2026-01-27 16:00:19 作者:小樊
来源:亿速云 阅读:97

在Pandas中,可以使用布尔索引、query()方法和loc[]方法等进行数据筛选和条件判断。以下是一些常用的方法:

  1. 布尔索引:通过创建一个布尔数组来筛选满足条件的数据。
import pandas as pd

data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
        'Age': [25, 30, 35, 40],
        'City': ['New York', 'San Francisco', 'Los Angeles', 'Chicago']}

df = pd.DataFrame(data)

# 筛选年龄大于等于30的数据
filtered_df = df[df['Age'] >= 30]
  1. query()方法:使用字符串表达式筛选数据。
# 使用query()方法筛选年龄大于等于30的数据
filtered_df = df.query('Age >= 30')
  1. loc[]方法:通过行标签和列标签筛选数据。
# 使用loc[]方法筛选年龄大于等于30的数据
filtered_df = df.loc[df['Age'] >= 30]
  1. 组合条件:可以使用&(与)、|(或)和~(非)操作符组合多个条件。
# 筛选年龄大于等于30且城市为'New York'的数据
filtered_df = df[(df['Age'] >= 30) & (df['City'] == 'New York')]

# 筛选年龄大于等于30或城市为'New York'的数据
filtered_df = df[(df['Age'] >= 30) | (df['City'] == 'New York')]

# 筛选年龄小于30且城市不为'New York'的数据
filtered_df = df[(df['Age'] < 30) & (~df['City'].isin(['New York']))]
  1. 应用函数:可以使用apply()方法对数据进行条件判断和筛选。
# 定义一个函数,判断年龄是否大于等于30
def is_age_gt_30(age):
    return age >= 30

# 使用apply()方法筛选年龄大于等于30的数据
filtered_df = df[df['Age'].apply(is_age_gt_30)]

这些方法可以根据实际需求进行组合使用,以实现更复杂的数据筛选和条件判断。

推荐阅读:
  1. iloc在Python中如何应用
  2. iloc访问DataFrame的秘诀

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

python

上一篇:Python Pandas如何进行数据预处理

下一篇:如何利用Pandas进行机器学习数据准备

相关阅读

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

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