statsmodels.multivariate.cancorr.CanCorr

class statsmodels.multivariate.cancorr.CanCorr(endog, exog, tolerance=1e-08, missing='none', hasconst=None, **kwargs)[source]

Canonical correlation analysis using singluar 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.

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/

Attributes

endog (array) See Parameters.
exog (array) See Parameters.
cancorr (array) The canonical correlation values
y_cancoeff: array The canonical coeefficients for endog
x_cancoeff: array The canonical coefficients for exog

Methods

corr_test() Approximate F test Perform multivariate statistical tests of the hypothesis that there is no canonical correlation between endog and exog.
fit() Fit a model to data.
from_formula(formula, data[, subset, drop_cols]) Create a Model from a formula and dataframe.
predict(params[, exog]) After a model has been fit predict returns the fitted values.