pandas.Series.filter#

Series.filter(items=None, like=None, regex=None, axis=None)[源代码]#

根据指定的索引标签对DataFrame的行或列进行子集选择。

请注意,此例程不对其内容过滤数据帧。过滤器应用于索引的标签。

Parameters:
items类似列表

保留轴中存在于 items 中的标签。

likestr

保留轴中“like in label == True”的标签。

regexstr(正则表达式)

保留轴中 re.search(regex, label) == True 的标签。

axis{0 或 ‘index’, 1 或 ‘columns’, None}, default None

要过滤的轴,表示为索引(int)或轴名称(str)。默认情况下,这是 info 轴,对于 DataFrame 是 ‘columns’。对于 Series,此参数未使用,默认为 None

Returns:
与输入对象相同的类型

参见

DataFrame.loc

通过标签或布尔数组访问一组行和列。

Notes

itemslikeregex 参数强制互斥。

axis 默认为使用 [] 进行索引时使用的 info 轴。

Examples

>>> df = pd.DataFrame(np.array(([1, 2, 3], [4, 5, 6])),
...                   index=['mouse', 'rabbit'],
...                   columns=['one', 'two', 'three'])
>>> df
        one  two  three
mouse     1    2      3
rabbit    4    5      6
>>> # select columns by name
>>> df.filter(items=['one', 'three'])
         one  three
mouse     1      3
rabbit    4      6
>>> # select columns by regular expression
>>> df.filter(regex='e$', axis=1)
         one  three
mouse     1      3
rabbit    4      6
>>> # select rows containing 'bbi'
>>> df.filter(like='bbi', axis=0)
         one  two  three
rabbit    4    5      6