pandas.Series.swaplevel#
- Series.swaplevel(i=-2, j=-1, copy=None)[источник]#
Поменять местами уровни i и j в
MultiIndex.По умолчанию меняет местами два самых внутренних уровня индекса.
- Параметры:
- i, jint или str
Уровни индексов для обмена. Можно передать имя уровня в виде строки.
- copybool, по умолчанию True
Копировать ли базовые данные.
Примечание
The copy ключевое слово изменит поведение в pandas 3.0. Копирование при записи будет включено по умолчанию, что означает, что все методы с copy ключевое слово будет использовать механизм ленивого копирования для отложенного копирования и игнорирования copy ключевое слово. The copy ключевое слово будет удалено в будущей версии pandas.
Вы уже можете получить будущее поведение и улучшения, включив copy on write
pd.options.mode.copy_on_write = True
- Возвращает:
- Series
Series с переставленными уровнями в MultiIndex.
Примеры
>>> s = pd.Series( ... ["A", "B", "A", "C"], ... index=[ ... ["Final exam", "Final exam", "Coursework", "Coursework"], ... ["History", "Geography", "History", "Geography"], ... ["January", "February", "March", "April"], ... ], ... ) >>> s Final exam History January A Geography February B Coursework History March A Geography April C dtype: object
В следующем примере мы поменяем уровни индексов местами. Здесь мы поменяем уровни по столбцам, но уровни можно менять местами по строкам аналогичным образом. Обратите внимание, что по столбцам — это поведение по умолчанию. Не указывая аргументы для i и j, мы меняем местами последний и предпоследний индексы.
>>> s.swaplevel() Final exam January History A February Geography B Coursework March History A April Geography C dtype: object
Предоставляя один аргумент, мы можем выбрать, с каким индексом поменять последний индекс. Например, мы можем поменять первый индекс с последним следующим образом.
>>> s.swaplevel(0) January History Final exam A February Geography Final exam B March History Coursework A April Geography Coursework C dtype: object
Мы также можем явно определить, какие индексы хотим поменять местами, указав значения для обоих i и j. Например, здесь мы меняем местами первый и второй индексы.
>>> s.swaplevel(0, 1) History Final exam January A Geography Final exam February B History Coursework March A Geography Coursework April C dtype: object