class_docstr: Soil Moisture Active Passive (SMAP) satellite and Mars Science Laboratory (MSL) rover Datasets.
  SMAP and MSL are two realworld public datasets, which are two real-world datasets expert-labeled by NASA.
  
  - source: https://github.com/khundman/telemanom
code: def __init__(self, subset=None, rootdir=None):
      super().__init__()
  
      if rootdir is None:
          fdir = os.path.dirname(os.path.abspath(__file__))
          merlion_root = os.path.abspath(
              os.path.join(fdir, "..", "..", "..")
          )
          rootdir = os.path.join(merlion_root, "data", "smap")
  
      # Download the SMAP dataset if it doesn't exist
      download(_logger, rootdir, MSL.url, "SMAP")
      preprocess(_logger, os.path.join(rootdir, "SMAP"), dataset="MSL")
      # Load training/test datasets
      df, metadata = combine_train_test_datasets(
          *load_data(os.path.join(rootdir, "SMAP"), "MSL")
      )
      self.time_series.append(df)
      self.metadata.append(metadata)
  
file_path: merlion/ts_datasets/ts_datasets/anomaly/msl.py
imports: import os
  import sys
  import logging
  from ts_datasets.anomaly.base import TSADBaseDataset
  from ts_datasets.anomaly.smd import download, combine_train_test_datasets
  from ts_datasets.anomaly.smap import preprocess, load_data
label_desc: Use image node_id 1 to create a new MSL object from inherited base classes: TSADBaseDataset with example: obj = MSL(subset, rootdir)