[R-sig-eco] CCA tolerance over multiple axes
Gregory, Matthew
matt.gregory at oregonstate.edu
Fri May 27 19:33:53 CEST 2011
Hi all,
First off, this isn't specifically an R question, other than the fact that we are trying to transition from CANOCO to vegan for running CCA. As part of that transition, I am trying to pull out the metrics in the CANOCO solution file and bring them into custom output from vegan.
I've been able to calculate species tolerances on each CCA axis, but cannot figure out the math behind the RMSTOL column in the CANOCO output, eg.
Tol : Species tolerance (root mean squared deviation for species)
N NAME AX1 AX2 AX3 AX4 RMSTOL N2
1 ABAM 0.4368 1.4152 0.4042 0.3082 78.29 1.85
2 ABGR _1 0.6383 0.6713 1.0175 1.2739 93.76 164.08
This is meant to be a cumulative measure of tolerance or niche width on the first four axes and ter Braak refers to the Carnes and Slade (1982) article on how to derive this value in the CANOCO manual. From what I understand of that article, the pseudocode for calculating RMSTOL would look like this:
x_jk = LC score of jth site on the kth axis
v_ik = species centroid score on the kth axis
n_i = number in the species group
d_ij_sqr = sum(x_jk - v_ik) ^ 2 across all axes for site j
rms_tol = sum(d_ij_sqr / n_i) across all sites
I'm pretty sure my problem is that I'm not figuring out the correct value for n_i. In the calculation of tolerances for each axis, the distances between site LC scores and species centroids was weighted by the abundance of the species of interest on that site. I am unclear if I am supposed to use all sites, the number of sites with the species of interest, or total species abundance as my n_i.
If anybody has derived this value from a vegan CCA, I would be very appreciative. Please let me know if this is not the appropriate forum for this question.
matt
More information about the R-sig-ecology
mailing list