code: def get_examples(self, indices, key_indices):
      if indices is None:
          len_ = len(self)
      elif isinstance(indices, slice):
          start, stop, step = indices.indices(len(self))
          len_ = len(six.moves.range(start, stop, step))
      else:
          len_ = len(indices)
  
      if key_indices is None:
          key_indices = six.moves.range(len(self._keys))
  
      in_examples = self._dataset.get_examples(indices, None)
  
      if self._dataset.mode is tuple:
          out_examples = self._transform_batch(*in_examples)
      elif self._dataset.mode is dict:
          out_examples = self._transform_batch(
              **dict(six.moves.zip(self._dataset.keys, in_examples))
          )
      elif self._dataset.mode is None:
          out_examples = self._transform_batch(*in_examples)
  
      if isinstance(out_examples, tuple):
          if hasattr(self, "_mode") and self._mode is not tuple:
              raise ValueError(
                  "transform_batch must not change its return type"
              )
          self._mode = tuple
          if not all(len(col) == len_ for col in out_examples):
              raise ValueError(
                  "transform_batch must not change the length of data"
              )
          return tuple(
              out_examples[key_index] for key_index in key_indices
          )
      elif isinstance(out_examples, dict):
          if hasattr(self, "_mode") and self._mode is not dict:
              raise ValueError(
                  "transform_batch must not change its return type"
              )
          self._mode = dict
          if not all(len(col) == len_ for col in out_examples.values()):
              raise ValueError(
                  "transform_batch must not change the length of data"
              )
          return tuple(
              out_examples[self._keys[key_index]]
              for key_index in key_indices
          )
      else:
          if hasattr(self, "_mode") and self._mode is not None:
              raise ValueError(
                  "transform_batch must not change its return type"
              )
          self._mode = None
          out_examples = (out_examples,)
          if not all(len(col) == len_ for col in out_examples):
              raise ValueError(
                  "transform_batch must not change the length of data"
              )
          return tuple(
              out_examples[key_index] for key_index in key_indices
          )
  
file_path: chainer/chainer/dataset/tabular/_transform.py
imports: import six
  from chainer.dataset.tabular import tabular_dataset
label_desc: Use image node_id 5 for calling the _TransformBatch obj's underlying member method code with example usage: obj.get_examples(indices, key_indices) and returns: tuple, tuple, tuple