pandas.Series.xs
-
Series.xs(key, axis=0, level=None, drop_level=True)[source] -
Возвращает поперечный срез из Series/DataFrame.
Этот метод принимает
keyаргумент для выбора данных на определённом уровне MultiIndex.Параметры: -
key : label or tuple of label -
Метка, содержащаяся в индексе, или частично в MultiIndex.
-
axis : {0 or ‘index’, 1 or ‘columns’}, default 0 -
Ось для извлечения поперечного среза.
-
level : object, defaults to first n levels (n=1 or len(key)) -
В случае ключа, частично содержащегося в MultiIndex, укажите, какие уровни использовать. Уровни могут быть указаны по метке или по позиции.
-
drop_level : bool, default True -
Если False, возвращает объект с теми же уровнями, что и self.
Возвращает: - Series или DataFrame
-
Поперечный срез из исходной Series или DataFrame, соответствующий выбранным уровням индекса.
См. также
-
DataFrame.loc - Доступ к группе строк и столбцов по метке(ам) или массиву значений boolean.
-
DataFrame.iloc - Индексация, основанная только на целочисленных позициях для выбора по позиции.
Примечания
xsнельзя использовать для установки значений.Слайсеры MultiIndex — это универсальный способ получения/установки значений на любом или нескольких уровнях. Это надмножество функциональности
xs, см. Слайсеры MultiIndex.Примеры
>>> 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 -
© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.24.2/reference/api/pandas.Series.xs.html