code: def calculate_group(
      self, data: pd.DataFrame, **kwargs
  ) -> pd.DataFrame:
      group_column, value_columns = self.validate_calculation(
          data.columns, **kwargs
      )
      d1 = data[value_columns]
      d2 = data[group_column]
      temp = d1.groupby(d2).agg(self.agg)
      return temp.merge(d2, how="right", on=[group_column])[
          value_columns
      ]
  
imports: from upgini.autofe.operand import PandasOperand, VectorizableMixin
  from typing import Optional
  import pandas
label_desc: Use image node_id 2 for calling the GroupByThenAgg obj's underlying member method code with example usage: obj.calculate_group(data) and returns: temp