code: def test_VARMAX_against_statsmodels_with_exog():
      """Compares Sktime's and Statsmodel's VARMAX.
  
      with exogenous input.
      """
      from statsmodels.tsa.api import VARMAX as _VARMAX
  
      train, test = temporal_train_test_split(df.astype("float64"))
      y_train, X_train = train[["A", "B"]], train[["C"]]
      _, X_test = test[["A", "B"]], test[["C"]]
      fh = ForecastingHorizon([1, 2, 3, 4, 5, 6])
      assert len(fh) == len(X_test)
  
      sktime_model = VARMAX()
      sktime_model.fit(y_train, X=X_train)
      y_pred = sktime_model.predict(fh=fh, X=X_test)
  
      stats = _VARMAX(y_train, exog=X_train)
      stats_fit = stats.fit()
      start, end = len(train) + fh[0] - 1, len(train) + fh[-1] - 1
      y_pred_stats = stats_fit.predict(
          start=start, end=end, exog=X_test
      )
      y_pred_stats = y_pred_stats.loc[
          fh.to_absolute_index(train.index[-1])
      ]
  
      assert_allclose(y_pred, y_pred_stats)
  
file_path: sktime/sktime/forecasting/tests/test_varmax.py
imports: import numpy
  import pandas
  import pytest
  from numpy.testing import assert_allclose
  from sktime.forecasting.base import ForecastingHorizon
  from sktime.forecasting.varmax import VARMAX
  from sktime.split import temporal_train_test_split
  from sktime.utils.validation._dependencies import _check_soft_dependencies
label_desc: Use image node_id 2 for calling a global function with example usage: test_VARMAX_against_statsmodels_with_exog() without return types