class_docstr: Base class for classification evaluation methods.
  
  Args:
      config: a :class:`ClassificationEvaluationConfig`
class_docstr_tok: ["Base","class","for","classification","evaluation","methods",".","Args",":","config",":","a",":","class",":","`","ClassificationEvaluationConfig","`"]
code: def rename(self, samples, eval_key, new_eval_key):
      dataset = samples._dataset
  
      in_fields = self.get_fields(dataset, eval_key)
      out_fields = self.get_fields(dataset, new_eval_key)
  
      in_sample_fields, in_frame_fields = fou.split_frame_fields(
          in_fields
      )
      out_sample_fields, out_frame_fields = fou.split_frame_fields(
          out_fields
      )
  
      if in_sample_fields:
          fields = dict(zip(in_sample_fields, out_sample_fields))
          dataset.rename_sample_fields(fields)
  
      if in_frame_fields:
          fields = dict(zip(in_frame_fields, out_frame_fields))
          dataset.rename_frame_fields(fields)
  
imports: from copy import deepcopy
  import inspect
  import itertools
  import warnings
  import numpy
  import sklearn.metrics
  import eta.core.utils
  import fiftyone
  import fiftyone.core.evaluation
  from fiftyone.core.expressions import ViewField
  import fiftyone.core.fields
  import fiftyone.core.labels
  import fiftyone.core.plots
  import fiftyone.core.utils
  import fiftyone.core.validation
  from .base import BaseEvaluationResults
label_desc: Use image node_id 4 for calling the ClassificationEvaluation obj's underlying member method code with example usage: obj.rename(samples, eval_key, new_eval_key) without return types