docs: def augmented_dickey_fuller(x, param):
      """
      The Augmented Dickey-Fuller test is a hypothesis test which checks whether a unit root is present in a time
      series sample. This feature calculator returns the value of the respective test statistic.
  
      See the statsmodels implementation for references and more details.
  
      :param x: the time series to calculate the feature of
      :type x: numpy.ndarray
      :param param: contains dictionaries {"attr": x} with x str, either "teststat", "pvalue" or "usedlag"
      :type param: list
      :return: the value of this feature
      :return type: float
      """
      res = None
      try:
          res = adfuller(x)
      except LinAlgError:
          res = np.NaN, np.NaN, np.NaN
      except ValueError: # occurs if sample size is too small
          res = np.NaN, np.NaN, np.NaN
      except MissingDataError: # is thrown for e.g. inf or nan in the data
          res = np.NaN, np.NaN, np.NaN
  
      return [('attr_"{}"'.format(config["attr"]),
                    res[0] if config["attr"] == "teststat"
               else res[1] if config["attr"] == "pvalue"
               else res[2] if config["attr"] == "usedlag" else np.NaN)
              for config in param]