当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pandas.Series.xs用法及代码示例


用法:

Series.xs(key, axis=0, level=None, drop_level=True)

从 Series/DataFrame 返回横截面。

此方法采用 key 参数来选择 MultiIndex 特定级别的数据。

参数

key标签或标签元组

标签包含在索引中,或部分包含在 MultiIndex 中。

axis{0 或 ‘index’,1 或 ‘columns’},默认 0

检索横截面的轴。

level对象,默认为前 n 级(n=1 或 len(key))

如果键部分包含在 MultiIndex 中,请指明使用了哪些级别。级别可以通过标签或位置来引用。

drop_level布尔值,默认为真

如果为 False,则返回与 self 具有相同级别的对象。

返回

Series或DataFrame

与所选索引级别对应的原始系列或数据帧的横截面。

注意

xs 不能用于设置值。

MultiIndex Slicers 是一种在任何级别或多个级别上获取/设置值的通用方法。它是xs 函数的超集,请参阅 MultiIndex Slicers。

例子

>>> d = {'num_legs':[4, 4, 2, 2],
...      'num_wings':[0, 0, 2, 2],
...      'class':['mammal', 'mammal', 'mammal', 'bird'],
...      'animal':['cat', 'dog', 'bat', 'penguin'],
...      'locomotion':['walks', 'walks', 'flies', 'walks']}
>>> df = pd.DataFrame(data=d)
>>> df = df.set_index(['class', 'animal', 'locomotion'])
>>> df
                           num_legs  num_wings
class  animal  locomotion
mammal cat     walks              4          0
       dog     walks              4          0
       bat     flies              2          2
bird   penguin walks              2          2

获取指定索引处的值

>>> df.xs('mammal')
                   num_legs  num_wings
animal locomotion
cat    walks              4          0
dog    walks              4          0
bat    flies              2          2

获取多个索引处的值

>>> df.xs(('mammal', 'dog'))
            num_legs  num_wings
locomotion
walks              4          0

获取指定索引和级别的值

>>> df.xs('cat', level=1)
                   num_legs  num_wings
class  locomotion
mammal walks              4          0

获取多个索引和级别的值

>>> df.xs(('bird', 'walks'),
...       level=[0, 'locomotion'])
         num_legs  num_wings
animal
penguin         2          2

获取指定列和轴的值

>>> df.xs('num_wings', axis=1)
class   animal   locomotion
mammal  cat      walks         0
        dog      walks         0
        bat      flies         2
bird    penguin  walks         2
Name:num_wings, dtype:int64

相关用法


注:本文由纯净天空筛选整理自pandas.pydata.org大神的英文原创作品 pandas.Series.xs。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。