class_docstr: MF regularized TCN + TCN. This version is not for automated searching yet.
class_docstr_tok: ["MF","regularized","TCN","+","TCN",".","This","version","is","not","for","automated","searching","yet","."]
code: def _check_covariates_dti(
      self, covariates=None, dti=None, ts_len=24, method_name="fit"
  ):
      if covariates is not None and not isinstance(
          covariates, np.ndarray
      ):
          raise ValueError(
              "Input covariates must be a ndarray. Got",
              type(covariates),
          )
      if covariates is not None and not covariates.ndim == 2:
          raise ValueError(
              "You should input a 2-D ndarray of covariates. But Got dimension of",
              covariates.ndim,
          )
      if covariates is not None and not covariates.shape[1] == ts_len:
          raise ValueError(
              f"The second dimension shape of covariates should be {ts_len}, "
              f"but got {covariates.shape[1]} instead."
          )
      if dti is not None and not isinstance(dti, pd.DatetimeIndex):
          raise ValueError(
              "Input dti must be a pandas DatetimeIndex. Got", type(dti)
          )
      if dti is not None and len(dti) != ts_len:
          raise ValueError(
              f"Input dti length should be equal to {ts_len}, "
              f"but got {len(dti)} instead."
          )
  
      if method_name != "fit":
          # covariates and dti should be consistent with that in fit
          if self.model.covariates is None and covariates is not None:
              raise ValueError(
                  f"Find valid covariates in {method_name} but invalid covariates "
                  f"in fit. Please keep them in consistence!"
              )
          if self.model.covariates is not None and covariates is None:
              raise ValueError(
                  f"Find valid covariates in fit but invalid covariates in "
                  f"{method_name}. Please keep them in consistence!"
              )
          if (
              self.model.covariates is not None
              and self.model.covariates.shape[0] != covariates.shape[0]
          ):
              raise ValueError(
                  f"The input covariates number in {method_name} should be the same "
                  f"as the input covariates number in fit. Got {covariates.shape[0]}"
                  f"and {self.model.covariates.shape[0]} respectively."
              )
          if self.model.dti is None and dti is not None:
              raise ValueError(
                  f"Find valid dti in {method_name} but invalid dti in fit. "
                  f"Please keep them in consistence!"
              )
          if self.model.dti is not None and dti is None:
              raise ValueError(
                  f"Find valid dti in fit but invalid dti in {method_name}. "
                  f"Please keep them in consistence!"
              )
  
imports: from abc import ABCMeta, abstractmethod
  from zoo.chronos.model.tcmf import DeepGLO
  from zoo.orca.automl.metrics import Evaluator
  from zoo.orca.automl.model.abstract import BaseModel
  from zoo.orca.data import SparkXShards, XShards
  import pickle
  import numpy
  import pandas
label_desc: Use image node_id 12 for calling the TCMF obj's underlying member method code with example usage: obj._check_covariates_dti(covariates, dti, ts_len, method_name) without return types