pandas.CategoricalIndex.map
- CategoricalIndex.map(mapper, na_action=None)[source]
-
Применяет отображение значений с помощью входного отображения или функции.
Отображает значения (их категории, а не коды) индекса на новые категории. Если соответствие отображения является взаимно-однозначным, результатом является
CategoricalIndex, который имеет ту же упорядоченность, что и исходный, в противном случае возвращаетсяIndex.Если используется dict или
Series, любая неотображённая категория отображается на NaN. Обратите внимание, что в этом случае будет возвращёнIndex.- Параметры:
-
- mapper:функция, dict или 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–2022, 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/2.2.2/reference/api/pandas.CategoricalIndex.map.html