📅  最后修改于: 2023-12-03 15:39:59.608000             🧑  作者: Mango
在 Python 中,我们可以使用 pandas 数据框(DataFrames)来处理和分析数据。在数据框中,我们经常需要使用多个条件来过滤数据,以便找到符合特定要求的行。在本文中,我们将介绍如何在数据框列值中使用 Python 多个条件。
在开始讨论如何使用多个条件时,我们需要先了解 pandas 数据框的基础知识。数据框是一个二维标记数组,其列可以是不同的数据类型(例如数字、字符串、布尔值等)。我们可以通过使用各种 pandas 函数和方法来对数据框进行操作,例如过滤、排序、合并等。
首先,我们需要导入 pandas:
import pandas as pd
然后,我们可以使用 pandas 读取一个 CSV 文件并将其转换为数据框:
df = pd.read_csv('data.csv')
这里我们将数据框存储在变量 df
中。接下来,我们可以使用 head
方法来查看数据框的前几行:
print(df.head())
输出:
Name Age Gender
0 Alex 20 Male
1 Jake 24 Male
2 Lisa 19 Female
3 Mary 30 Female
4 Peter 25 Male
这是一个包含四列的数据框,每一列各有五行数据。现在,让我们来看看如何使用多个条件来过滤数据框的行。
假设我们只想在数据框中选择性别为女性且年龄在 20 到 25 岁之间的行。我们可以使用 &
运算符连接两个条件。代码如下:
filtered_df = df[(df['Gender'] == 'Female') & (df['Age'] >= 20) & (df['Age'] <= 25)]
在这里,我们使用了三个条件:
df['Gender'] == 'Female'
选择性别为女性的行。df['Age'] >= 20
选择年龄大于等于 20 岁的行。df['Age'] <= 25
选择年龄小于等于 25 岁的行。注意,在每个条件周围有括号,以便让 Python 知道优先级。在这里,我们使用了 &
运算符将条件连接起来,这表示“与”运算。也就是说,只有当所有条件都为真时,行才会包含在 filtered_df
中。
我们可以使用 print
方法查看结果:
print(filtered_df)
输出:
Name Age Gender
2 Lisa 19 Female
我们可以看到,只有 Lisa 这一行符合我们的条件。因为只有一个女性满足要求。
如果我们想要选择年龄大于 25 岁或年龄小于 20 岁的行,我们可以使用 |
运算符将两个条件连接起来。代码如下:
filtered_df = df[(df['Age'] < 20) | (df['Age'] > 25)]
在这里,我们使用了两个条件:
df['Age'] < 20
选择年龄小于 20 岁的行。df['Age'] > 25
选择年龄大于 25 岁的行。在这里,我们使用了 |
运算符将条件连接起来,它表示“或”运算。也就是说,行只需要符合一个条件即可包含在 filtered_df
中。
我们可以使用 print
方法查看结果:
print(filtered_df)
输出:
Name Age Gender
0 Alex 20 Male
3 Mary 30 Female
我们可以看到,选出了年龄为 20 岁和 30 岁的两行数据。
在本文中,我们介绍了如何在数据框列值中使用 Python 多个条件来过滤数据框的行。我们使用了 &
运算符和 |
运算符将条件连接起来,分别表示“与”运算和“或”运算。我们还介绍了 pandas 数据框的基础知识,包括如何读取和处理数据框。
希望这篇文章对你使用 Python 处理数据有所帮助!