Hi sig-ecology! Here comes a probably stupid question... I am looking for smart ways to include information about underlying variables in MDS plots. In other words, after having computed an ordination with isoMDS or metaMDS from a community table, I would like to add something like species coefficients/loadings as vectors to the plot of sites. As no species coefficients exist in this case, the best I could come up with so far is simply vectors calculated from correlation coefficients of the individual species with the site scores (on two MDS axes). The function metaMDS allows to compute "species scores" using the function wascores().... I have now pondered for 2 days how these scores are calculated and what their precise meaning would be. Would these species scores be appropriate to show as vectors in the MDS? Thanks for any answer... Gabriel Singer
wascores() for metaMDS?
4 messages · gabriel singer, Jari Oksanen, Gavin Simpson
Gabriel,
On 19/08/09 12:40 PM, "gabriel singer" <gabriel.singer at univie.ac.at> wrote:
Hi sig-ecology! Here comes a probably stupid question... I am looking for smart ways to include information about underlying variables in MDS plots. In other words, after having computed an ordination with isoMDS or metaMDS from a community table, I would like to add something like species coefficients/loadings as vectors to the plot of sites. As no species coefficients exist in this case, the best I could come up with so far is simply vectors calculated from correlation coefficients of the individual species with the site scores (on two MDS axes). The function metaMDS allows to compute "species scores" using the function wascores().... I have now pondered for 2 days how these scores are calculated and what their precise meaning would be. Would these species scores be appropriate to show as vectors in the MDS? Thanks for any answer...
I think these were documented... Please point out the unclear parts of the
documentation so that I can correct those.
The wascores are Weighted Averages Scores and they are calculated like
weighted averages, or similarly as species scores in correspondence
analysis. This means that (with some scaling) they show the centroid
("barycentre") of the species occurrence in the ordination graph. It is not
appropriate to present these as arrows which indicate a linear increase to
the direction of the arrow instead of the centre of abundance. Therefore the
species scores can (and as default in metaMDS, will) be presented as points.
If -- for any reason that is none of my business -- you want to get vectors
of species, you can fit species as vectors. This happens with metaMDS or
isoMDS like this:
library(vegan)
data(dune)
m <- metaMDS(dune)
# or m <- isoMDS(vegdist(dune))
vec <- envfit(m, dune)
plot(m, dis="site")
# or with isoMDS: ordiplot(m)
plot(vec)
I promised that I won't comment on this, but still I must say that I cannot
find a reason to do so.
Please note that you can also use ordisurf to fit nonlinear species
responses if you think that species are not points nor arrows. Vegan
tutorial (from the Web) gives an example.
Cheers, Jari Oksanen
On Wed, 2009-08-19 at 11:40 +0200, gabriel singer wrote:
Hi sig-ecology! Here comes a probably stupid question... I am looking for smart ways to include information about underlying variables in MDS plots. In other words, after having computed an ordination with isoMDS or metaMDS from a community table, I would like to add something like species coefficients/loadings as vectors to the plot of sites. As no species coefficients exist in this case, the best I could come up with so far is simply vectors calculated from correlation coefficients of the individual species with the site scores (on two MDS axes). The function metaMDS allows to compute "species scores" using the function wascores().... I have now pondered for 2 days how these scores are calculated and what their precise meaning would be.
An individual taxon's "species score" is computed as the weighted average of the "site scores", weights being the abundance of that taxon in each site. It is the abundance weighted centroid of all the samples in which the species occurs. The motivation for this is that in CA, species scores are weighted averages of site scores that are themselves weighted averages of species scores and so on in the Two-way algorithm of Mark Hill - not that vegan computes the CA solution that way in cca() - so it is an analogous approach to computing species scores for nMDS.
Would these species scores be appropriate to show as vectors in the MDS?
Not as vectors, as that implies directionality or increasing abundance and there is no reason to assume that the abundance of a given taxon will increase linearly or even monotonically in a given direction across the nMDS plot. Although I hesitate to call it that, the species score computed as the weighted average of the site scores, is an optima (of nMDS site scores) and thus abundance declines as one moves away from the point. So in this sense, you display the species scores in the same manner as on a CA or CCA plot, as a point, instead of the vector in PCA/RDA. However, the decline in CA is uniform in any direction (fitted not actual abundance), i.e. in 2-D the species score is the point at the top of a 2-D bell-shaped surface as this is the implied response model in CA. With nMDS there is no reason to assume this is the case. For one or two taxa, you could just project a surface of actual abundances using ordisurf() or you could just use the points as you would in a CA diagram, more or less. The problem with the surface approach is that you can only show a couple of species at most on a single ordination plot. ordisurf would likely be the best option for most extra data you wish to impose on to the nMDS plot, again for the reason that the relationship between nMDS axes and the variable of interest need not be a simple linear or monotonic surface. HTH G
Thanks for any answer... Gabriel Singer
_______________________________________________ R-sig-ecology mailing list R-sig-ecology at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-ecology
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% Dr. Gavin Simpson [t] +44 (0)20 7679 0522 ECRC, UCL Geography, [f] +44 (0)20 7679 0565 Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/ UK. WC1E 6BT. [w] http://www.freshwaters.org.uk %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
Dear Jari and Gavin, thanks a lot, everything clear... with the connection to CCA I now get the meaning of the species scores, almost trivial after all... gg
Gavin Simpson wrote:
On Wed, 2009-08-19 at 11:40 +0200, gabriel singer wrote:
Hi sig-ecology!
Here comes a probably stupid question... I am looking for smart ways to
include information about underlying variables in MDS plots. In other
words, after having computed an ordination with isoMDS or metaMDS from a
community table, I would like to add something like species
coefficients/loadings as vectors to the plot of sites. As no species
coefficients exist in this case, the best I could come up with so far is
simply vectors calculated from correlation coefficients of the
individual species with the site scores (on two MDS axes).
The function metaMDS allows to compute "species scores" using the
function wascores().... I have now pondered for 2 days how these scores
are calculated and what their precise meaning would be.
An individual taxon's "species score" is computed as the weighted average of the "site scores", weights being the abundance of that taxon in each site. It is the abundance weighted centroid of all the samples in which the species occurs. The motivation for this is that in CA, species scores are weighted averages of site scores that are themselves weighted averages of species scores and so on in the Two-way algorithm of Mark Hill - not that vegan computes the CA solution that way in cca() - so it is an analogous approach to computing species scores for nMDS.
Would these
species scores be appropriate to show as vectors in the MDS?
Not as vectors, as that implies directionality or increasing abundance and there is no reason to assume that the abundance of a given taxon will increase linearly or even monotonically in a given direction across the nMDS plot. Although I hesitate to call it that, the species score computed as the weighted average of the site scores, is an optima (of nMDS site scores) and thus abundance declines as one moves away from the point. So in this sense, you display the species scores in the same manner as on a CA or CCA plot, as a point, instead of the vector in PCA/RDA. However, the decline in CA is uniform in any direction (fitted not actual abundance), i.e. in 2-D the species score is the point at the top of a 2-D bell-shaped surface as this is the implied response model in CA. With nMDS there is no reason to assume this is the case. For one or two taxa, you could just project a surface of actual abundances using ordisurf() or you could just use the points as you would in a CA diagram, more or less. The problem with the surface approach is that you can only show a couple of species at most on a single ordination plot. ordisurf would likely be the best option for most extra data you wish to impose on to the nMDS plot, again for the reason that the relationship between nMDS axes and the variable of interest need not be a simple linear or monotonic surface. HTH G
Thanks for any answer... Gabriel Singer
_______________________________________________ R-sig-ecology mailing list R-sig-ecology at r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-ecology
Dr. Gabriel Singer Department of Freshwater Ecology - University of Vienna and Wassercluster Lunz Biologische Station GmbH +43-(0)664-1266747 gabriel.singer at univie.ac.at