class_docstr: Class to hold results from fitting an VARMAX model.
  
  Parameters
  ----------
  model : VARMAX instance
      The fitted model instance
  
  Attributes
  ----------
  specification : dictionary
      Dictionary including all attributes from the VARMAX model instance.
  coefficient_matrices_var : ndarray
      Array containing autoregressive lag polynomial coefficient matrices,
      ordered from lowest degree to highest.
  coefficient_matrices_vma : ndarray
      Array containing moving average lag polynomial coefficients,
      ordered from lowest degree to highest.
  
  See Also
  --------
  statsmodels.tsa.statespace.kalman_filter.FilterResults
  statsmodels.tsa.statespace.mlemodel.MLEResults
code: def __init__(
      self,
      model,
      params,
      filter_results,
      cov_type=None,
      cov_kwds=None,
      **kwargs,
  ):
      super().__init__(
          model, params, filter_results, cov_type, cov_kwds, **kwargs
      )
  
      self.specification = Bunch(
          **{
              # Set additional model parameters
              "error_cov_type": self.model.error_cov_type,
              "measurement_error": self.model.measurement_error,
              "enforce_stationarity": self.model.enforce_stationarity,
              "enforce_invertibility": self.model.enforce_invertibility,
              "trend_offset": self.model.trend_offset,
              "order": self.model.order,
              # Model order
              "k_ar": self.model.k_ar,
              "k_ma": self.model.k_ma,
              # Trend / Regression
              "trend": self.model.trend,
              "k_trend": self.model.k_trend,
              "k_exog": self.model.k_exog,
          }
      )
  
      # Polynomials / coefficient matrices
      self.coefficient_matrices_var = None
      self.coefficient_matrices_vma = None
      if self.model.k_ar > 0:
          ar_params = np.array(self.params[self.model._params_ar])
          k_endog = self.model.k_endog
          k_ar = self.model.k_ar
          self.coefficient_matrices_var = (
              (ar_params.reshape(k_endog * k_ar, k_endog).T)
              .reshape(k_endog, k_endog, k_ar)
              .T
          )
      if self.model.k_ma > 0:
          ma_params = np.array(self.params[self.model._params_ma])
          k_endog = self.model.k_endog
          k_ma = self.model.k_ma
          self.coefficient_matrices_vma = (
              (ma_params.reshape(k_endog * k_ma, k_endog).T)
              .reshape(k_endog, k_endog, k_ma)
              .T
          )
  
imports: import contextlib
  from warnings import warn
  import pandas
  import numpy
  from statsmodels.compat.pandas import Appender
  from statsmodels.tools.tools import Bunch
  from statsmodels.tools.data import _is_using_pandas
  from statsmodels.tsa.vector_ar import var_model
  import statsmodels.base.wrapper
  from statsmodels.tools.sm_exceptions import EstimationWarning
  from .kalman_filter import INVERT_UNIVARIATE, SOLVE_LU
  from .mlemodel import MLEModel, MLEResults, MLEResultsWrapper
  from .initialization import Initialization
  from .tools import is_invertible, concat, prepare_exog, constrain_stationary_multivariate, unconstrain_stationary_multivariate, prepare_trend_spec, prepare_trend_data
label_desc: Use image node_id 1 to create a new VARMAXResults object from inherited base classes: MLEResults with example: obj = VARMAXResults(model, params, filter_results, cov_type, cov_kwds)