Python – 通过列名对数据框架进行子集

  • Post category:Python

当我们处理大量数据时,数据框架可以成为重要的工具。Python中的 Pandas 库提供了可以处理类似 Excel 电子表格的数据框架的功能。数据框架中的数据通常采用有标题的行和列进行组织,因此非常适合通过列名和行索引来对数据进行选择和操作。

在 Pandas 中,我们可以使用 .loc[] 来对数据框架进行子集的处理。.loc[] 通过行标签和列标签对数据进行筛选。具体语法为 df.loc[行标签, 列标签],其中 行标签列标签 可以是一个、多个或者是一个范围。

以一个简单的数据框架为例:

   Name  Age     Sex
0  Jack   26    Male
1  Jane   24  Female
2  John   29    Male
3   Ava   20  Female
4  Mark   22    Male

我们可以使用以下语句来选取列名为 Age 的列:

df.loc[:, 'Age']

执行上述语句后,会得到一个 DataFrame 对象,仅包含 Age 列的数据:

0    26
1    24
2    29
3    20
4    22
Name: Age, dtype: int64

另外,我们可以使用类似以下的语句来选取年龄大于等于 25 岁的所有行:

df.loc[df['Age'] >= 25]

执行上述语句后,会得到一个 DataFrame 对象,仅包含年龄大于等于 25 岁的行:

   Name  Age   Sex
0  Jack   26  Male
2  John   29  Male

当然,我们还可以选择特定的行和列:

df.loc[df['Age'] >= 25, ['Name', 'Age']]

执行上述语句后,会得到一个 DataFrame 对象,仅包含年龄大于等于 25 岁的行的 NameAge 列:

   Name  Age
0  Jack   26
2  John   29

总之, .loc[] 在 Pandas 中是非常重要的子集功能,对于处理数据框架和进行数据分析十分有用。需要注意的是,当使用 .loc[] 进行子集操作时,一定要注意选取的行、列符合条件,否则会得到错误的结果。