Group data by column "groupIndex", and do "count" aggregation on column "groupIndex",
while do aggregation similar to "average" on column "weightIdx", but require values in
a group are equal to each other, then merge the results with "groupInfo" and "weightInfo"
separately.
A partition reader returned by { PartitionReaderFactory#createReader(InputPartition)} or
{ PartitionReaderFactory#createColumnarReader(InputPartition)}.