Pandas如何使用isin方法筛选多列数据

Pandas如何使用isin方法筛选多列数据

在本文中,我们将介绍Pandas中的isin方法,以及如何在多列数据中使用该方法。

阅读更多:Pandas 教程

什么是isin方法?

isin方法是Pandas中的一个函数,其作用是检查DataFrame中某些列是否包含指定的一组值。isin方法是一种非常实用和灵活的数据筛选方式,可以较快速地筛选出需要的数据。

如何使用isin方法?

在使用isin方法前,我们需要先导入Pandas库,随后创建DataFrame数据。为了方便起见,我们在此选择一个包含两个数据列的DataFrame数据。

import pandas as pd

data = {'name': ['John', 'Emma', 'Kevin', 'Lucy'],
        'gender': ['M', 'F', 'M', 'F'],
        'age': [23, 24, 25, 26],
        'country': ['USA', 'UK', 'Australia', 'Canada']}
df = pd.DataFrame(data)

执行上述代码后,我们得到如下DataFrame数据:

    name  gender  age    country
0   John    M     23       USA
1   Emma    F     24       UK
2  Kevin    M     25  Australia
3   Lucy    F     26    Canada

假设我们需要筛选出国籍为USA和Canada的数据。可以使用isin方法进行筛选,具体代码如下:

values = ['USA', 'Canada']
result = df[df['country'].isin(values)]

其中values是一个包含需要筛选的值的列表,df[‘country’].isin(values)返回一个True/False序列,这个序列通过布尔索引所选出的行即为筛选结果。最终,我们得到的筛选结果如下:

   name gender  age  country
0  John      M   23      USA
3  Lucy      F   26   Canada

这里仅仅筛选了一个数据列,如果需要对多个数据列进行筛选,可以在df中添加需要筛选的列,并在代码中对多列进行筛选。

values_1 = ['USA', 'Canada']
values_2 = ['M']
result = df[df['country'].isin(values_1) & df['gender'].isin(values_2)]

上述代码将筛选出国籍为USA和Canada,且性别为男性的数据,最终结果如下:

   name gender  age country
0  John      M   23     USA

总结

通过本文,我们了解了Pandas中的isin方法、如何对单列和多列数据进行筛选,并通过示例代码进行了解析。isin方法为数据处理提供了一种灵活、高效的数据筛选方式,对于数据清洗、数据挖掘等领域具有广泛的应用价值。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程