pandas.DataFrame.unstack#

DataFrame.unstack(уровень=-1, fill_value=None, sort=True)[источник]#

Свод уровня (обязательно иерархических) меток индекса.

Возвращает DataFrame с новым уровнем меток столбцов, внутренний уровень которого состоит из повернутых меток индекса.

Если индекс не является MultiIndex, результатом будет Series (аналог stack, когда столбцы не являются MultiIndex).

Параметры:
уровеньint, str или список этих значений, по умолчанию -1 (последний уровень)

Уровень(и) индекса для развертывания, можно передать имя уровня.

fill_valueint, str или dict

Заменить NaN этим значением, если unstack создает пропущенные значения.

sortbool, по умолчанию True

Сортировать уровень(и) в результирующих столбцах MultiIndex.

Возвращает:
Series или DataFrame

Смотрите также

DataFrame.pivot

Сводная таблица на основе значений столбца.

DataFrame.stack

Развернуть уровень меток столбцов (обратная операция от unstack).

Примечания

Ссылка руководство пользователя для дополнительных примеров.

Примеры

>>> index = pd.MultiIndex.from_tuples([('one', 'a'), ('one', 'b'),
...                                    ('two', 'a'), ('two', 'b')])
>>> s = pd.Series(np.arange(1.0, 5.0), index=index)
>>> s
one  a   1.0
     b   2.0
two  a   3.0
     b   4.0
dtype: float64
>>> s.unstack(level=-1)
     a   b
one  1.0  2.0
two  3.0  4.0
>>> s.unstack(level=0)
   one  two
a  1.0   3.0
b  2.0   4.0
>>> df = s.unstack(level=0)
>>> df.unstack()
one  a  1.0
     b  2.0
two  a  3.0
     b  4.0
dtype: float64