РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
351 of 687 menu

Функция pivot_table

Функция pivot_table предназначена для создания сводных таблиц из данных DataFrame. Она позволяет агрегировать данные, группируя их по строкам и столбцам, и применяя различные функции агрегации. Основные параметры: values - столбцы для агрегации, index - группировка по строкам, columns - группировка по столбцам, aggfunc - функция агрегации (по умолчанию mean), fill_value - значение для заполнения пропусков.

Синтаксис

pd.pivot_table(df, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, ...)

Пример

Создадим простой DataFrame и построим сводную таблицу с группировкой по индексу и столбцам:

import pandas as pd df = pd.DataFrame({ 'a': ['x', 'x', 'y', 'y'], 'b': ['one', 'two', 'one', 'two'], 'c': [1, 2, 3, 4] }) res = pd.pivot_table(df, values='c', index='a', columns='b', aggfunc='sum') print(res)

Результат выполнения кода:

b one two a x 1 2 y 3 4

Пример

Используем функцию агрегации mean и заполним пропуски нулём:

import pandas as pd df = pd.DataFrame({ 'a': ['x', 'x', 'y', 'y', 'z'], 'b': ['one', 'two', 'one', 'two', 'one'], 'c': [5, 6, 7, 8, 9] }) res = pd.pivot_table(df, values='c', index='a', columns='b', aggfunc='mean', fill_value=0) print(res)

Результат выполнения кода:

b one two a x 5.0 6.0 y 7.0 8.0 z 9.0 0.0

Пример

Множественная агрегация с несколькими функциями:

import pandas as pd df = pd.DataFrame({ 'a': ['x', 'x', 'y', 'y'], 'b': ['one', 'two', 'one', 'two'], 'c': [10, 20, 30, 40], 'd': [1, 2, 3, 4] }) res = pd.pivot_table(df, values=['c', 'd'], index='a', columns='b', aggfunc=['sum', 'mean']) print(res)

Результат выполнения кода:

c d sum mean sum mean b one two one two one two one two a x 10 20 10 20 1 2 1 2 y 30 40 30 40 3 4 3 4

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

  • функция pivot,
    которая выполняет перестройку таблицы без агрегации
  • функция crosstab,
    которая строит таблицу частотных пересечений
  • функция melt,
    которая преобразует широкий формат данных в длинный
  • функция get_dummies,
    которая создаёт фиктивные переменные для категорий
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить