code: def __init__(
      self,
      dataset: Dataset,
      transform: Transformation,
      is_train: bool = True,
      shuffle_buffer_length: Optional[int] = None,
      cache_data: bool = False,
  ):
      super().__init__()
      self.shuffle_buffer_length = shuffle_buffer_length
  
      self.transformed_dataset = TransformedDataset(
          Cyclic(dataset)
          if not cache_data
          else Cached(Cyclic(dataset)),
          transform,
          is_train=is_train,
      )
  
file_path: gluonts/src/gluonts/nursery/robust-mts-attack/pts/dataset/loader.py
imports: from typing import Optional
  import itertools
  from torch.utils.data import IterableDataset
  from gluonts.dataset.common import Dataset
  from gluonts.transform import Transformation, TransformedDataset
  from gluonts.itertools import Cyclic, PseudoShuffled, Cached
label_desc: Use image node_id 1 to create a new TransformedIterableDataset object from inherited base classes: IterableDataset with example: obj = TransformedIterableDataset(dataset, transform, is_train, shuffle_buffer_length, cache_data)