class_docstr: Class storing mapping-like results for an experiment.
  
  Data is stored in a dataframe, and auxiliary information ((key name,
  default value) pairs) are stored in a collection of MapKeyInfo objects.
  
  Mapping-like results occur whenever a metric is reported as a collection
  of results, each element corresponding to a tuple of values.
  
  The simplest case is a sequence. For instance a time series is
  a mapping from the 1-tuple `(timestamp)` to (mean, sem) results.
  
  Another example: MultiFidelity results. This is a mapping from
  `(fidelity_feature_1, ..., fidelity_feature_n)` to (mean, sem) results.
  
  The dataframe is retrieved via the `map_df` property. The data can be stored
  to an external store for future use by attaching it to an experiment using
  `experiment.attach_data()` (this requires a description to be set.)
class_docstr_tok: ["Class","storing","mapping-like","results","for","an","experiment",".","Data","is","stored","in","a","dataframe",",","and","auxiliary","information","(","(","key","name",",","default","value",")","pairs",")","are","stored","in","a","collection","of","MapKeyInfo","objects",".","Mapping-like","results","occur","whenever","a","metric","is","reported","as","a","collection","of","results",",","each","element","corresponding","to","a","tuple","of","values",".","The","simplest","case","is","a","sequence",".","For","instance","a","time","series","is","a","mapping","from","the","1-tuple","`","(","timestamp",")","`","to","(","mean",",","sem",")","results",".","Another","example",":","MultiFidelity","results",".","This","is","a","mapping","from","`","(","fidelity_feature_1",",","...",",","fidelity_feature_n",")","`","to","(","mean",",","sem",")","results",".","The","dataframe","is","retrieved","via","the","`","map_df","`","property",".","The","data","can","be","stored","to","an","external","store","for","future","use","by","attaching","it","to","an","experiment","using","`","experiment.attach_data","(",")","`","(","this","requires","a","description","to","be","set",".",")"]
code: def filter(
      self,
      trial_indices: Optional[Iterable[int]] = None,
      metric_names: Optional[Iterable[str]] = None,
  ) -> MapData:
      return MapData(
          df=self._filter_df(
              df=self.map_df,
              trial_indices=trial_indices,
              metric_names=metric_names,
          ),
          map_key_infos=self.map_key_infos,
      )
  
imports: from __future__ import annotations
  from logging import Logger
  from typing import Any, Dict, Generic, Iterable, List, Optional, Sequence, Type, TypeVar
  import numpy
  import pandas
  from ax.core.data import Data
  from ax.core.types import TMapTrialEvaluation
  from ax.exceptions.core import UnsupportedError
  from ax.utils.common.base import SortableBase
  from ax.utils.common.docutils import copy_doc
  from ax.utils.common.equality import dataframe_equals
  from ax.utils.common.logger import get_logger
  from ax.utils.common.serialization import serialize_init_args, TClassDecoderRegistry, TDecoderRegistry
  from ax.utils.common.typeutils import checked_cast
label_desc: Use image node_id 13 for calling the MapData obj's underlying member method code with example usage: obj.filter(trial_indices, metric_names) and returns: MapData