Spec-Zone.ru › pandas 2

pandas.Series.cat.reorder_categories

Series.cat.reorder_categories(*args, **kwargs)[source]

Переупорядочить категории в соответствии с указанными в new_categories.

new_categories необходимо включить все старые категории и без новых элементов категорий.

Параметры:
new_categories:Index-like

Категории в новом порядке.

ordered:bool, optional

Указывает, рассматривать ли категориальные данные как упорядоченные. Если не указано, информация об упорядоченности не изменяется.

Возвращает:
Categorical

Категориальные данные с переупорядоченными категориями.

Исключения:
ValueError

Если новые категории не содержат все старые элементы категорий или новые.

См. также

rename_categories

Переименовать категории.

add_categories

Добавить новые категории.

remove_categories

Удалить указанные категории.

remove_unused_categories

Удалить неиспользуемые категории.

set_categories

Установить заданные категории.

Примеры

Для pandas.Series:

>>> ser = pd.Series(['a', 'b', 'c', 'a'], dtype='category')
>>> ser = ser.cat.reorder_categories(['c', 'b', 'a'], ordered=True)
>>> ser
0   a
1   b
2   c
3   a
dtype: category
Categories (3, object): ['c' < 'b' < 'a']
>>> ser.sort_values()
2   c
1   b
0   a
3   a
dtype: category
Categories (3, object): ['c' < 'b' < 'a']

Для pandas.CategoricalIndex:

>>> ci = pd.CategoricalIndex(['a', 'b', 'c', 'a'])
>>> ci
CategoricalIndex(['a', 'b', 'c', 'a'], categories=['a', 'b', 'c'],
                 ordered=False, dtype='category')
>>> ci.reorder_categories(['c', 'b', 'a'], ordered=True)
CategoricalIndex(['a', 'b', 'c', 'a'], categories=['c', 'b', 'a'],
                 ordered=True, dtype='category')

© 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.Series.cat.reorder_categories.html

Spec-Zone.ru

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