Los pandas crean promedio por grupo
df.groupby("ColumnNameOfGroups")["ColumnNameOfWhatToAvg"].mean()
Arno Deceuninck
df.groupby("ColumnNameOfGroups")["ColumnNameOfWhatToAvg"].mean()