code: def add_dataset(self, name, metafeatures):
      metafeatures.name = name
      if isinstance(metafeatures, DatasetMetafeatures):
          data_ = {
              mf.name: mf.value
              for mf in metafeatures.metafeature_values.values()
          }
          metafeatures = pd.Series(
              name=name, data=data_, dtype=np.float64
          )
      if name.lower() in self.metafeatures.index:
          self.logger.warning(
              "Dataset %s already in meta-data. Removing occurence.",
              name.lower(),
          )
          self.metafeatures.drop(name.lower(), inplace=True)
      self.metafeatures = pd.concat(
          [self.metafeatures, pd.DataFrame(metafeatures).T]
      )
  
imports: from collections import OrderedDict
  import numpy
  import pandas
  from ConfigSpace.configuration_space import Configuration
  from ConfigSpace.util import deactivate_inactive_hyperparameters
  from ..input import aslib_simple
  from ..metafeatures.metafeature import DatasetMetafeatures
label_desc: Use image node_id 2 for calling the MetaBase obj's underlying member method code with example usage: obj.add_dataset(name, metafeatures) without return types