maxframe.dataframe.Series.filter#

Series.filter(items=None, like=None, regex=None, axis=None)#

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

请注意,此例程不会基于 DataFrame 的内容进行筛选。筛选是应用于索引标签的。

参数:
  • items (list-like) -- 保留轴上在 items 中的标签。

  • like (str) -- 保留轴上满足 "like in label == True" 的标签。

  • regex (str (regular expression)) -- 保留轴上满足 re.search(regex, label) == True 的标签。

  • axis ({0 or 'index', 1 or 'columns', None}, default None) -- 要筛选的轴,可以表示为索引(int)或轴名称(str)。默认为信息轴,对于 DataFrame 是 'columns'。对于 Series 此参数未使用,默认为 None

返回类型:

same type as input object

参见

DataFrame.loc

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

备注

itemslikeregex 参数被强制互斥。

axis 默认为使用 [] 索引时的信息轴。

示例

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