Python中过滤Pandas DataFrame的列值的方法

2025年1月5日 | 阅读 3 分钟

Pandas 是 Python 中一个强大的数据操作库,提供了多种筛选 DataFrame 数据的方法。数据筛选在数据分析中至关重要,它允许您根据特定条件提取特定的行。在本文中,我们将探讨按列值筛选 Pandas DataFrame 的各种方法。

Pandas DataFrame 简介

在深入探讨筛选之前,让我们先了解一下 Pandas DataFrame 是什么。DataFrame 是一个二维的、大小可变的、异构的表格数据结构,具有带标签的轴(行和列)。它类似于电子表格或 SQL 表,其中每一列都可以是不同的数据类型。

要使用 Pandas,您首先需要导入该库

按列值筛选

有几种方法可以按列值筛选 Pandas DataFrame。我们将探讨一些最常用的方法

1. 使用布尔索引

布尔索引允许您根据条件筛选行。您创建一个布尔掩码,这是一个由 True 和 False 值组成的 Series,指示每行是否满足条件。

例如,要筛选年龄大于 30 的行

Code Example

输出

      Name  Age  Salary
2  Charlie   35   70000
3    David   40   80000

2. 使用 query 方法

query 方法允许您使用类似 SQL 的语法筛选 DataFrame。当筛选条件复杂时,它特别有用

输出

      Name  Age  Salary
2  Charlie   35   70000
3    David   40   80000

3. 使用 loc 方法

loc 方法用于按标签访问一组行和列。您可以使用它根据列值筛选行

输出

      Name  Age  Salary
2  Charlie   35   70000

4. 使用 isin 方法

isin 方法允许您筛选列值包含在值列表中的行

输出

    Name  Age  Salary
0  Alice   25   50000
1    Bob   30   60000

5. 组合筛选

您可以使用按位运算符(& 表示 AND,| 表示 OR,~ 表示 NOT)组合多个筛选器,以创建复杂的筛选条件

输出

    Name  Age  Salary
0  Alice   25   50000

6. 使用 between 方法

between 方法允许您筛选列值在指定范围内的行

输出

 

输出

      Name  Age  Salary
1      Bob   30   60000
2  Charlie   35   70000
3    David   40   80000

结论

按列值筛选 Pandas DataFrame 是数据分析中的一项常见操作。在本文中,我们探讨了几种筛选 DataFrame 的方法,包括布尔索引、query 方法、loc 方法、isin 方法、组合筛选和 between 方法。通过使用这些技术,您可以高效地提取分析所需的数据。