MATLAB functions with examples of the analyses in ter Braak & Schaffers (2004). Reference ter Braak, C.J.F and Schaffers, A.P. (2004). Co-correspondence analysis: a new ordination method to relate two community compositions. Ecology, 85, 834-846. 1. Symmetric co-correspondence analysis: SymCoCa.m - function for Symmetric Co-Correspondence analysis using Coinertia analysis (coinertia.m) [equation (7)] SymCoCa_u1u2rescale.m - rescales the U1 and U2 scores from SymCoCa by the quarter root of the eigenvalues lamda to form a biplot of Q1' R0 Q2, the R0-based covariance between the Q-matrices Example_SymCoCa.m - example for using SymCoCa produces scores, fits and ordination diagram Example_SymCoCa.txt - output of Example_SymCoCa CoCa_trans.m - function that implements the transition formulae (3)- (6) Gives the first axis of co-correspondence analysis Example_CoCa_trans.m - example for using CoCa_trans and SymCoCa.m Example_CoCa_trans.txt - output of Example_CoCa_trans.m; Shows that transition formulae can also be solved by coinertia analysis on Q1 and Q2 [equation (7)] 2. Predictive co-correspondence analysis: 2.1 With PLS_Toolbox 2.1 (www.eigenvector.com) PredCoCa.m - function for Predictive Co-Correspondence analysis using the simpls function of PLS_Toolbox 2.1 Example_PredCoCa.m - example for using PredCoCa, produces percentage crossvalidatory fit, scores, fitted values and ordination diagram Example_PredCoCa.txt - output of Example_PredCoCa 2.2 Without PLS_Toolbox 2.1 PredCoCa_eig.m - function for Predictive Co-Correspondence analysis SIMPLS version using the formulae of ter Braak & de Jong 1998, Journal of Chemometrics 12 41-54. It solves the eigenvalue problem posed by equations (1) and (2) and the simpls contraints for further axes. Example_PredCoCa_eig.m - example for using PredCoCa_eig, produces scores and ordination diagram Example_PredCoCa_eig.txt - output of Example_PredCoCa_eig 2.3 Testing axes of Predictive co-correspondence analysis Test_axes_CoCa.m - function testing axis of Predictive Co-Correspondence analysis by permutation using the formulae of ter Braak & Smilauer 2002; and the NIPALS version of Predictive Co-Correspondence analysis Example_Test_axes_CoCa.m - example for using Test_axes_CoCa Example_Test_axes_CoCa.txt - output of Example_Test_axes_CoCa 3. Crossvalidatory Canonical Correspondence analysis(CCA) and CCA-PLS using simpls from PLS_Toolbox 2.1 (www.eigenvector.com) Example_crossvalCCA.m - example for crossvalidatory CCA-PLS and CCA; produces percentage crossvalidatory fit Example_crossvalCCA.txt - output of Example_crossvalCCA Utility functions: coinertia.m - does coinertia analysis according to Doledec & Chessel (1996) via a (generalized) singular value decomposition (svd) coinertia_I.m - coinertia analysis in the identity metric based on svd of X'Y = Tucker's interbattery factor analysis (used in permtest.m) rcsum.c - row, colum and total sums of a matrix scale_chi - forms chi-square residuals with predefined row and column metrics R0 and K1 scale_lin - centers and standardizes wrt to a prefined mean and standard deviation mncn_chi - forms chi-square residuals in the metric R0; it implements equation 8 This transformation can be seen as mean-centering in the chi-square metric mncn_lin - centers the colums of a matrix in the R0-metric and pre-multiplies with the square-root of the metric R0 permtest - permutation test residualmatrix - function to substract the fit of an ordination axis (deflation) Functions that require a licence for PLS_Toolbox 2.1 (www.eigenvector.com) simpls.m - basic function for SIMPLS [NOT included in this archive!] crossval.m - function for crossvalidation using PLS, PCA and regression [not used itself here] crossval_chi.m - modification of crossval.m by Cajo ter Braak for crossvalidation of simpls-based predictive co-correspondence analysis crossval_chi_lin.m - modification of crossval.m by Cajo ter Braak for crossvalidation of canonical correspondence analysis (CCA) and CCA-PLS; Uses simpls.