class_docstr: Canonical correlation analysis using singular value decomposition
  
  For matrices exog=x and endog=y, find projections x_cancoef and y_cancoef
  such that:
  
      x1 = x * x_cancoef, x1' * x1 is identity matrix
      y1 = y * y_cancoef, y1' * y1 is identity matrix
  
  and the correlation between x1 and y1 is maximized.
  
  Attributes
  ----------
  endog : ndarray
      See Parameters.
  exog : ndarray
      See Parameters.
  cancorr : ndarray
      The canonical correlation values
  y_cancoef : ndarray
      The canonical coefficients for endog
  x_cancoef : ndarray
      The canonical coefficients for exog
  
  References
  ----------
  .. [*] http://numerical.recipes/whp/notes/CanonCorrBySVD.pdf
  .. [*] http://www.csun.edu/~ata20315/psy524/docs/Psy524%20Lecture%208%20CC.pdf
  .. [*] http://www.mathematica-journal.com/2014/06/canonical-correlation-analysis/
code: def __init__(
      self,
      endog,
      exog,
      tolerance=1e-8,
      missing="none",
      hasconst=None,
      **kwargs,
  ):
      super().__init__(
          endog, exog, missing=missing, hasconst=hasconst, **kwargs
      )
      self._fit(tolerance)
  
file_path: statsmodels/statsmodels/multivariate/cancorr.py
imports: import numpy
  from numpy.linalg import svd
  import scipy
  import pandas
  from statsmodels.base.model import Model
  from statsmodels.iolib import summary2
  from .multivariate_ols import multivariate_stats
label_desc: Use image node_id 1 to create a new CanCorr object from inherited base classes: Model with example: obj = CanCorr(endog, exog, tolerance, missing, hasconst)