Pandas 什么是series.filter()方法

Pandas 什么是series.filter()方法

pandas series构造函数中的series.filter()方法用于基于索引标签来子集化系列对象的行。filter方法不适用于系列对象的内容,只应用于系列对象的索引标签。

如果指定的标签与系列索引标签不匹配,该方法不会引发错误。

filter()方法的参数包括items、like、regex和axis。items参数接受一个类似列表的对象,用于访问给定系列对象中的行集。regex参数用于定义可用于检索系列行的正则表达式。

示例1

在下面的示例中,我们将使用指定的索引标签列表来过滤掉pandas系列对象中的一些行。

# importing pandas package
import pandas as pd

# creating pandas Series object
series = pd.Series({'B':'black','Y':'yellow', 'W':'white','R':'red', 'Bl':'blue','G':'green','S':"silver", 'M':"maroon"})

print("Original Series:")
print(series)

print("Output: ")
# Apply the filter method
print(series.filter(['B','R','G','M']))

说明

首先,我们使用一个Python字典创建了一个系列对象,其中包含键值对。在这里,索引标签是通过使用字典的键创建的。

输出

输出如下所示:

Original Series:
B    black
Y    yellow
W    white
R    red
Bl    blue
G    green
S    silver
M    maroon
dtype: object

Output:
B    black
R    red
G    green
M    maroon
dtype: object

我们已成功从初始系列对象中过滤出指定的行。结果系列对象与输入系列对象具有相同的数据类型。

示例2

让我们使用另一个系列对象,使用索引标签过滤单个行。我们必须将单个标签值作为可迭代对象的元素进行指定,否则会出现错误。

# importing pandas package
import pandas as pd

# creating pandas Series object
series = pd.Series({1:'East',2:'West',3:'North',4:'South',5:'East',6:'West',7:'North'})
print("Original Series:")
print(series)

print("Output: ")
# Apply the filter method
print(series.filter([2]))

输出

下面给出了输出结果−

Original Series:
1    East
2    West
3    North
4    South
5    East
6    West
7    North
dtype: object

Output:
2    West
dtype: object

如上所示,我们成功从系列对象中过滤出了一个单行标签。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程

Pandas 精选笔记