Многомерная сводка данных с использованием pivot_table
Функция pivot_table
в библиотеке pandas позволяет создавать сводные таблицы из данных в формате DataFrame. Это мощный инструмент для агрегации и анализа данных. Давайте подробно рассмотрим, как использовать pivot_table
для создания многомерных сводок данных.
Основные параметры функции pivot_table
pivot_table
Функция pivot_table
имеет несколько ключевых параметров:
data: Ваш DataFrame, содержащий исходные данные.
values: Список колонок, которые нужно агрегировать (например, суммы или средние значения).
index: Колонки, которые будут использоваться в качестве индексов строк сводной таблицы.
columns: Колонки, которые будут использоваться в качестве столбцов сводной таблицы.
aggfunc: Функция агрегации, которую нужно применить к данным. По умолчанию это
numpy.mean
, но можно использовать другие функции, такие какsum
,count
,max
,min
и т.д.fill_value: Значение, которым будут заменены пропущенные значения в сводной таблице.
dropna: Логическое значение, указывающее, следует ли исключать столбцы или строки, содержащие только пропущенные значения.
Пример использования pivot_table
pivot_table
Рассмотрим пример. Допустим, у нас есть DataFrame с данными о продажах:
Теперь мы хотим создать сводную таблицу, которая покажет общие продажи по магазинам и продуктам для каждой даты.
Объяснение результата
В этой сводной таблице:
index задает строки таблицы. Мы указали две колонки: 'Дата' и 'Магазин'. Это означает, что строки будут сгруппированы по этим значениям.
columns задает столбцы. Мы указали колонку 'Продукт', поэтому каждый уникальный продукт станет отдельным столбцом.
values указывает, какие данные мы хотим агрегировать. В этом случае это 'Продажи'.
aggfunc определяет функцию агрегации. Мы выбрали 'sum', чтобы получить общую сумму продаж.
fill_value заменяет пропущенные значения на 0.
В результате мы получим таблицу, где каждая строка будет представлять конкретную комбинацию даты и магазина, а столбцы будут показывать суммы продаж для разных продуктов.
Пример вывода
Дополнительные параметры
dropna: Если установить
dropna=True
, то будут исключены все уровни индекса или колонки, которые полностью заполнены пропущенными значениями. Например, еслиdropna=True
, а в данных есть уровень индекса с только пропущенными значениями, то такой уровень будет удален.
Заключение
Функция pivot_table
в pandas — это мощный инструмент для создания сводных таблиц и анализа данных. Она позволяет гибко группировать данные по разным признакам и выполнять различные виды агрегаций.
Last updated