Spec-Zone.ru › pandas 0.21

pandas.DataFrame.pivot_table

DataFrame.pivot_table(values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All') [source]

Создайте сводную таблицу в формате электронных таблиц в виде DataFrame. Уровни в сводной таблице будут храниться в объектах MultiIndex (иерархических индексах) в индексе и столбцах результирующего DataFrame

Параметры:

values : столбец для агрегирования, необязательно

index : столбец, Grouper, массив или список предыдущего

Если передан массив, его длина должна совпадать с длиной данных. Список может содержать любые другие типы (кроме списка). Ключи для группировки по индексу сводной таблицы. Если передан массив, он используется так же, как значения столбца.

columns : столбец, Grouper, массив или список предыдущего

Если передан массив, его длина должна совпадать с длиной данных. Список может содержать любые другие типы (кроме списка). Ключи для группировки по столбцу сводной таблицы. Если передан массив, он используется так же, как значения столбца.

aggfunc : функция или список функций, по умолчанию numpy.mean

Если передан список функций, результирующая сводная таблица будет иметь иерархические столбцы, верхним уровнем которых являются имена функций (определяемые из самих объектов функций)

fill_value : скаляр, по умолчанию None

Значение для заполнения пропущенных значений

margins : булево значение, по умолчанию False

Добавить все строки/столбцы (например, для подсчета итогов/общих итогов)

dropna : булево значение, по умолчанию True

Не включать столбцы, значения которых все NaN

margins_name : строка, по умолчанию ‘All’

Имя строки/столбца, которое будет содержать итоги, когда margins равно True.

Возвращает:

table : DataFrame

См. также

DataFrame.pivot
pivot без агрегирования, который может обрабатывать нечисловые данные

Примеры

>>> df = pd.DataFrame({"A": ["foo", "foo", "foo", "foo", "foo",
...                          "bar", "bar", "bar", "bar"],
...                    "B": ["one", "one", "one", "two", "two",
...                          "one", "one", "two", "two"],
...                    "C": ["small", "large", "large", "small",
...                          "small", "large", "small", "small",
...                          "large"],
...                    "D": [1, 2, 2, 3, 3, 4, 5, 6, 7]})
>>> df
     A    B      C  D
0  foo  one  small  1
1  foo  one  large  2
2  foo  one  large  2
3  foo  two  small  3
4  foo  two  small  3
5  bar  one  large  4
6  bar  one  small  5
7  bar  two  small  6
8  bar  two  large  7
>>> table = pivot_table(df, values='D', index=['A', 'B'],
...                     columns=['C'], aggfunc=np.sum)
>>> table
... 
C        large  small
A   B
bar one    4.0    5.0
    two    7.0    6.0
foo one    4.0    1.0
    two    NaN    6.0

© 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.21.1/generated/pandas.DataFrame.pivot_table.html

Spec-Zone.ru

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