📌  相关文章
📜  如何使用 Pandas 中的查询函数根据列值过滤行?(1)

📅  最后修改于: 2023-12-03 14:52:00.880000             🧑  作者: Mango

如何使用 Pandas 中的查询函数根据列值过滤行?

Pandas 是一个强大的数据分析库,其中的查询函数可以帮助我们根据列值过滤行。下面我们将讨论如何使用 Pandas 中的查询函数进行筛选。

首先,我们需要导入 Pandas:

import pandas as pd

然后,我们可以使用 read_csv 函数从 CSV 文件中读取数据:

df = pd.read_csv('data.csv')

假设我们的 CSV 文件如下:

Name,Gender,Age
John,Male,25
Emily,Female,30
Daniel,Male,35
Sarah,Female,28

要根据 Gender 列的值过滤行,我们可以使用 query 函数:

female_df = df.query("Gender == 'Female'")

这将返回一个 DataFrame,其中只包含 Gender 列的值为 Female 的行:

     Name  Gender  Age
1   Emily  Female   30
3   Sarah  Female   28

我们也可以使用多个条件进行过滤:

young_female_df = df.query("Gender == 'Female' and Age < 30")

这将返回一个 DataFrame,其中只包含 Gender 列的值为 Female,且 Age 列的值小于 30 的行:

    Name  Gender  Age
3  Sarah  Female   28

除了 query 函数外,我们还可以使用 loc 函数进行筛选。例如:

male_df = df.loc[df['Gender'] == 'Male']

这将返回一个 DataFrame,其中只包含 Gender 列的值为 Male 的行:

    Name Gender  Age
0   John   Male   25
2  Daniel   Male   35

使用 loc 函数时,我们需要在方括号内使用布尔表达式,以选择要保留的行。

以上就是使用 Pandas 中的查询函数进行行筛选的简要介绍。在实际应用中,我们可以使用更复杂的条件进行筛选,以满足我们的需求。