Pivot Table Pandas: Your Key to Mastering Data Manipulation and Analysis
Pivot table в Pandas – это мощный и универсальный инструмент, который используется для агрегации, группировки и анализа данных. Pivot table представляет собой таблицу, в которой значения из одной или нескольких столбцов группируются по значениям других столбцов.
Пример создания Pivot table в Pandas с использованием функции pivot_table():
import pandas as pd
# создание DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'year': [2018, 2018, 2019, 2019, 2020],
'sales': [100, 200, 300, 400, 500]}
df = pd.DataFrame(data)
# создание Pivot table
pt = pd.pivot_table(df, values='sales', index=['year'], columns=['name'])
print(pt)
В этом примере мы создали простой DataFrame с тремя столбцами: name, year и sales. Затем мы создали Pivot table, используя функцию pivot_table(), указав значения, которые мы хотели агрегировать (sales), индекс (year) и столбцы (name), по которым мы хотели сгруппировать данные.
Результатом нашей операции является новый DataFrame, который содержит Pivot table. Здесь мы можем видеть, что значения sales были сгруппированы по годам (столбец year) и именам (столбцы name). Значения в таблице представлены с помощью функции агрегации (по умолчанию это mean) по умолчанию.
Например, мы можем использовать функцию pivot_table в Pandas для агрегации данных с использованием другой функции, например, для вычисления среднего значения и суммы по столбцам:
pt = pd.pivot_table(df, values='sales', index=['year'], columns=['name'], aggfunc=[np.mean, np.sum])
print(pt)
Здесь мы добавили параметр aggfunc для предоставления функций агрегации, которые мы хотим использовать. В этом случае мы вычисляем среднее значение и сумму продаж для каждого года и имени.
Также мы можем указать параметр fill_value, чтобы заполнить пустые значения (NaN) в таблице другим значением, например нулем:
pt = pd.pivot_table(df, values='sales', index=['year'], columns=['name'], fill_value=0)
print(pt)
Здесь мы использовали fill_value = 0 для заполнения пустых значений в таблице.
В заключение, Pivot table в Pandas представляет собой мощный инструмент для агрегации, группировки и анализа данных. С помощью функции pivot_table(), мы можем легко создавать Pivot table с различными функциями агрегации, а также использовать параметры, такие как fill_value, для настройки таблицы по своему усмотрению.