Например, вот DataFrame:
df = pd.DataFrame({'year': ['2019', '2019', '2019', '2019', '2020', '2020', '2020'],
'key': ['a', 'a', 'b', 'c', 'd', 'e', 'f'],
'val': [3, 4, 3, 5, 6, 1, 2]})
Похоже,
year key val
0 2019 a 3
1 2019 a 4
2 2019 b 3
3 2019 c 5
4 2020 d 6
5 2020 e 1
6 2020 f 2
Я хочу получить
year key mean_except_current_key
2019 a 4
b 4
c 3.33
2020 d 1.5
e 4
f 3.5
То есть, группа df
по year
и key
, а mean_except_current_key
определяется как среднее от val
по year
, за исключением всех строк с тем же key
, что и текущая строка.
Надеюсь Я прояснил эту проблему. Но я не могу понять этого. И я нашел этот вопрос . Однако он отличается от моего.
Спасибо за любую помощь.