code: def aggregate(self, aggregations):
      """
      Aggregate data from the tables in this set by performing some
      set of column operations on the groups and coalescing the results into
      a new :class:`.Table`.
  
      :code:`aggregations` must be a sequence of tuples, where each has two
      parts: a :code:`new_column_name` and a :class:`.Aggregation` instance.
  
      The resulting table will have the keys from this :class:`TableSet` (and
      any nested TableSets) set as its :code:`row_names`. See
      :meth:`.Table.__init__` for more details.
  
      :param aggregations:
          A list of tuples in the format :code:`(new_column_name, aggregation)`,
          where each :code:`aggregation` is an instance of :class:`.Aggregation`.
      :returns:
          A new :class:`.Table`.
      """
      column_names, column_types, output, row_name_columns = _aggregate(
          self, aggregations
      )
  
      if len(row_name_columns) == 1:
          row_names = row_name_columns[0]
      else:
  
          def row_names(r):
              return tuple(r[n] for n in row_name_columns)
  
      return Table(
          output, column_names, column_types, row_names=row_names
      )
  
label_desc: Use image node_id 2 for calling a global function with example usage: aggregate(aggregations) and returns: Table, tuple