add_suffix
+ reset_index
df.groupby(['ID','Year']).mean().add_suffix('_avg').reset_index()
Out[337]:
ID Year Value_avg Value2_avg
0 A 2012 1.5 4.5
1 A 2013 4.5 6.5
2 B 2013 8.0 8.0
3 B 2014 6.5 6.0
Вы превращаете кусок совершенно хорошей строки Unicode (назад) в кучу нетипизированных байтов, которые Python не имеет понятия, как обращаться, но отчаянно пытается применить кодек ASCII. Удалите .encode('utf-8')
, и все будет в порядке.