Weighted Averages, Percent of Total, and Custom Aggregations in pandas: Going Beyond sum and mean in groupby | Wicked Smart Data