GroupByを汎用化