Spec-Zone.ru › pandas 0.24

pandas.CategoricalIndex.map

CategoricalIndex.map(mapper) [source]

Применяет отображение значений на основе соответствия (словарь, Series или функция).

Преобразует значения (их категории, а не коды) индекса в новые категории. Если соответствие отображения взаимно однозначно, результатом является CategoricalIndex, который сохраняет порядок исходного индекса, в противном случае возвращается Index.

Если используется dict или Series, все неотображенные категории отображаются на NaN. Обратите внимание, что в этом случае возвращается Index.

Параметры:
mapper : function, dict, or Series

Соответствие отображения.

Возвращает:
pandas.CategoricalIndex или pandas.Index

Преобразованный индекс.

См. также

Index.map
Применить соответствие отображения к Index.
Series.map
Применить соответствие отображения к Series.
Series.apply
Применить более сложные функции к Series.

Примеры

>>> idx = pd.CategoricalIndex(['a', 'b', 'c'])
>>> idx
CategoricalIndex(['a', 'b', 'c'], categories=['a', 'b', 'c'],
                 ordered=False, dtype='category')
>>> idx.map(lambda x: x.upper())
CategoricalIndex(['A', 'B', 'C'], categories=['A', 'B', 'C'],
                 ordered=False, dtype='category')
>>> idx.map({'a': 'first', 'b': 'second', 'c': 'third'})
CategoricalIndex(['first', 'second', 'third'], categories=['first',
                 'second', 'third'], ordered=False, dtype='category')

Если соответствие отображения взаимно однозначно, порядок категорий сохраняется:

>>> idx = pd.CategoricalIndex(['a', 'b', 'c'], ordered=True)
>>> idx
CategoricalIndex(['a', 'b', 'c'], categories=['a', 'b', 'c'],
                 ordered=True, dtype='category')
>>> idx.map({'a': 3, 'b': 2, 'c': 1})
CategoricalIndex([3, 2, 1], categories=[3, 2, 1], ordered=True,
                 dtype='category')

Если соответствие отображения не взаимно однозначно, возвращается Index:

>>> idx.map({'a': 'first', 'b': 'second', 'c': 'first'})
Index(['first', 'second', 'first'], dtype='object')

Если используется dict, все неотображенные категории отображаются на NaN, и результатом является Index:

>>> idx.map({'a': 'first', 'b': 'second'})
Index(['first', 'second', nan], dtype='object')

© 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.CategoricalIndex.map.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API