code: def test_impute_num_no_exo(load_pos_and_neg_data_missing):
      """Tests Imputation methods (numeric) methods for Univariate forecasting
      without exogenous variables"""
      data = load_pos_and_neg_data_missing
      impute_val = data.max() + 1  # outside the range of data
  
      exp = TSForecastingExperiment()
      FH = 12
      exp.setup(data=data, fh=FH, numeric_imputation_target=impute_val)
  
      y_check = [impute_val] * len(exp.y.values)
      y_train_check = [impute_val] * len(exp.y_train.values)
      y_test_check = [impute_val] * len(exp.y_test.values)
  
      # Due to preprocessing not all 'y' values should be the same
      assert not np.any(exp.y.values == y_check)
      assert np.any(exp.y_transformed.values == y_check)
      assert not np.any(exp.y_train.values == y_train_check)
      assert np.any(exp.y_train_transformed.values == y_train_check)
      assert not np.any(exp.y_test.values == y_test_check)
      assert np.any(exp.y_test_transformed.values == y_test_check)
  
      # X None. No preprocessing is applied to it.
      assert exp.X is None
      assert exp.X_transformed is None
      assert exp.X_train is None
      assert exp.X_train_transformed is None
      assert exp.X_test is None
      assert exp.X_test_transformed is None
  
imports: import os
  import numpy
  import pytest
  import sktime
  from packaging import version
  from sktime.forecasting.compose import ForecastingPipeline, TransformedTargetForecaster
  from time_series_test_utils import _IMPUTE_METHODS_STR, _SCALE_METHODS, _TRANSFORMATION_METHODS, _TRANSFORMATION_METHODS_NO_NEG, _return_model_names_for_missing_data
  from pycaret.time_series import TSForecastingExperiment
label_desc: Use image node_id 11 for calling a global function with example usage: test_impute_num_no_exo(load_pos_and_neg_data_missing) without return types