class_docstr: Results for multivariate linear regression
      
class_docstr_tok: ["Results","for","multivariate","linear","regression"]
docstr: Linear hypotheses testing
  
  Parameters
  ----------
  %(hypotheses_doc)s
  skip_intercept_test : bool
      If true, then testing the intercept is skipped, the model is not
      changed.
      Note: If a term has a numerically insignificant effect, then
      an exception because of emtpy arrays may be raised. This can
      happen for the intercept if the data has been demeaned.
  
  Returns
  -------
  results: _MultivariateOLSResults
  
  Notes
  -----
  Tests hypotheses of the form
  
      L * params * M = C
  
  where `params` is the regression coefficient matrix for the
  linear model y = x * params, `L` is the contrast matrix, `M` is the
  dependent variable transform matrix and C is the constant matrix.
docstr_tok: ["Linear","hypotheses","testing","Parameters","--","--","--","--","--","%","(","hypotheses_doc",")","s","skip_intercept_test",":","bool","If","true",",","then","testing","the","intercept","is","skipped",",","the","model","is","not","changed",".","Note",":","If","a","term","has","a","numerically","insignificant","effect",",","then","an","exception","because","of","emtpy","arrays","may","be","raised",".","This","can","happen","for","the","intercept","if","the","data","has","been","demeaned",".","Returns","--","--","--","-","results",":","_MultivariateOLSResults","Notes","--","--","-","Tests","hypotheses","of","the","form","L","*","params","*","M","=","C","where","`","params","`","is","the","regression","coefficient","matrix","for","the","linear","model","y","=","x","*","params",",","`","L","`","is","the","contrast","matrix",",","`","M","`","is","the","dependent","variable","transform","matrix","and","C","is","the","constant","matrix","."]
code: def mv_test(self, hypotheses=None, skip_intercept_test=False):
      """
      Linear hypotheses testing
  
      Parameters
      ----------
      %(hypotheses_doc)s
      skip_intercept_test : bool
          If true, then testing the intercept is skipped, the model is not
          changed.
          Note: If a term has a numerically insignificant effect, then
          an exception because of emtpy arrays may be raised. This can
          happen for the intercept if the data has been demeaned.
  
      Returns
      -------
      results: _MultivariateOLSResults
  
      Notes
      -----
      Tests hypotheses of the form
  
          L * params * M = C
  
      where `params` is the regression coefficient matrix for the
      linear model y = x * params, `L` is the contrast matrix, `M` is the
      dependent variable transform matrix and C is the constant matrix.
      """
      k_xvar = len(self.model.exog_names)
      if hypotheses is None:
          if self.model.data.design_info is not None:
              terms = self.model.data.design_info.term_name_slices
              hypotheses = []
              for key in terms:
                  if skip_intercept_test and key == "Intercept":
                      continue
                  L_contrast = np.eye(k_xvar)[terms[key], :]
                  hypotheses.append([key, L_contrast, None])
          else:
              hypotheses = []
              for i in range(k_xvar):
                  name = "x%d" % (i)
                  L = np.zeros([1, k_xvar])
                  L[0, i] = 1
                  hypotheses.append([name, L, None])
  
      results = _multivariate_ols_test(
          hypotheses,
          self._fittedmod,
          self.model.exog_names,
          self.model.endog_names,
      )
  
      return MultivariateTestResults(
          results, self.model.endog_names, self.model.exog_names
      )
  
imports: import numpy
  from numpy.linalg import eigvals, inv, solve, matrix_rank, pinv, svd
  from scipy import stats
  import pandas
  from patsy import DesignInfo
  from statsmodels.compat.pandas import Substitution
  from statsmodels.base.model import Model, LikelihoodModelResults
  import statsmodels.base.wrapper
  from statsmodels.regression.linear_model import RegressionResultsWrapper
  from statsmodels.iolib import summary2
  from statsmodels.tools.decorators import cache_readonly
label_desc: Use image node_id 7 for calling the MultivariateLSResults obj's underlying member method code with example usage: obj.mv_test(hypotheses, skip_intercept_test) and returns: MultivariateTestResults