📜  python pandas 数据帧条件子集 - Python (1)

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

Python Pandas 数据帧条件子集

Pandas 是一个非常流行的数据科学库,可用于数据清洗、处理、分析和可视化等多种数据处理任务。其中一个重要的组件是 DataFrame,表示二维表格形式的数据结构。在处理数据时,通常需要使用条件子集来选择特定行或列,以缩小数据的范围。

选择行

我们可以使用布尔条件选择特定行。例如,对于以下 DataFrame:

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
        'age': [25, 30, 35, 40],
        'gender': ['F', 'M', 'M', 'M']}

df = pd.DataFrame(data)

可以使用以下代码来选择年龄大于 30 的行:

subset = df[df['age'] > 30]

这会返回一个新的 DataFrame,其中包含只有年龄大于 30 的行。

要同时选择多个条件,可以使用 &(和)、|(或)和 ~(非)操作符。例如,要选择女性且年龄大于 25 的行:

subset = df[(df['gender'] == 'F') & (df['age'] > 25)]
选择列

要选择特定列,可以使用 DataFrame 的 loc 或 iloc 方法。loc 方法通过列名选择列,而 iloc 方法使用列索引。

例如,要选择仅包含姓名和性别的列,可以使用以下代码:

subset = df.loc[:, ['name', 'gender']]

或者,可以使用以下代码来选择第一列和第三列:

subset = df.iloc[:, [0, 2]]
结论

在 Pandas 中,条件子集是一种非常强大的工具,可用于缩小数据的范围,执行各种数据处理任务。通过选择特定的行和列,我们可以快速有效地处理大量数据。