Сохранить форму таблицы в Pandas
Метод transform после
группировки возвращает ряд той
же длины, что исходная таблица:
в каждой строке стоит сводка
её группы, а не одна строка
на ключ.
Соберём продажи по городам и получим среднее по группе в отдельном столбце рядом с исходной ценой:
import pandas as pd
data = {
'city': ['A', 'A', 'B', 'B', 'B'],
'price': [10, 20, 5, 15, 25],
}
shop = pd.DataFrame(data)
grp = shop.groupby('city')['price']
mean_in_group = grp.transform('mean')
shop['mean_price'] = mean_in_group
print(shop) # выведет city price mean_price
# 0 A 10 15.0
# 1 A 20 15.0
# 2 B 5 15.0
# 3 B 15 15.0
# 4 B 25 15.0
У обеих строк города A
в столбце mean_price
стоит 15.0 - среднее
по двум ценам. У города B
в каждой из трёх строк одно
и то же среднее по трём
значениям.
Создайте таблицу с классами
K, K, L
и баллами 70, 90,
80 в столбце score.
Добавьте столбец с суммой
баллов по классу в каждой
строке и выведите таблицу.
Соберите таблицу с двумя
магазинами и выручкой в
столбце rev. В каждой
строке покажите максимальную
выручку её магазина в новом
столбце и выведите результат.
Из таблицы с районами и
населением в столбце pop
получите столбец, где в
каждой строке стоит среднее
население по её району,
и выведите таблицу.