class_docstr: Performs utility analysis for DP aggregations.
  
  This class reuses the computation graph from the DP computation code by
  subclassing from pipeline_dp.DPEngine and by replacing some nodes of the
  computational graph from DP computation to analysis.
class_docstr_tok: ["Performs","utility","analysis","for","DP","aggregations",".","This","class","reuses","the","computation","graph","from","the","DP","computation","code","by","subclassing","from","pipeline_dp.DPEngine","and","by","replacing","some","nodes","of","the","computational","graph","from","DP","computation","to","analysis","."]
code: def aggregate(
      self,
      col,
      params: pipeline_dp.AggregateParams,
      data_extractors: pipeline_dp.DataExtractors,
      public_partitions=None,
  ):
      raise ValueError(
          "UtilityAnalysisEngine.aggregate can't be called.\n"
          "If you like to perform utility analysis use "
          "UtilityAnalysisEngine.aggregate.\n"
          "If you like to perform DP computations use "
          "DPEngine.aggregate."
      )
  
imports: import copy
  from typing import Optional, Union
  import pipeline_dp
  from pipeline_dp import budget_accounting
  from pipeline_dp import combiners
  from pipeline_dp import contribution_bounders
  from pipeline_dp import pipeline_backend
  import analysis
  import analysis.contribution_bounders
  from analysis import per_partition_combiners
  from analysis import data_structures
label_desc: Use image node_id 2 for calling the UtilityAnalysisEngine obj's underlying member method code with example usage: obj.aggregate(col, params, data_extractors, public_partitions) without return types