I am running an NMDS and have a few questions regarding the envfit()
function in the vegan package. I have read the documentation for this function and numerous posts on SO and others about vegan, envfit()
, and species scores in general.
I have seen both
envfit()
andwascore()
used to calculate species scores for ordination techniques. By default, metaMDS() useswascore()
. This uses weighted averaging, which I understand. I am having a harder time understandingenvfit()
. Doenvfit()
andwascore(
yield the same results? Iswascore()
preferable given that it is the default? I realize that in some situations,wascore()
might not be an option (ie. negative values), as mentioned in this post. How to get 'species score' for ordination with metaMDS()?Given that
envfit()
andwascore()
both seem to be used for species scores, they should yield similar results, right? I am hoping that we could do a proof of this here... The following shows species scores determined usingmetaMDS()
using the defaultwascore()
:
data(varespec)
ord <- metaMDS(varespec)
species.scores <- as.data.frame(scores(ord, "species"))
species.scores
wascore()
makes sense to me, it uses weighted averaging. There is a good explanation of weighted averaging for species scores in Analysis of Ecological Data by McCune and Grace (2002) p. 150.
Could somebody help me breakdown envfit
?
species.envfit <- envfit(ord, varespec, choices = c(1,2), permutations = 999)
species.scores.envfit <- as.data.frame(scores(species.envfit, display = "vectors"))
species.scores.envfit
"The values that you see in the table are the standardised coefficients from the linear regression used to project the vectors into the ordination. These are directions for arrows of unit length." - comment from Plotted envfit vectors not matching NMDS scores
^Could somebody please show me what linear model is being run here and what standardized value is being extracted?
species.scores
species.scores.envfit
These values are very different from each other. What am I missing here?
This is my first SO post, please have mercy. I would have asked a question on some of the other relevant threads, but I am the dregs of SO and don't even have the reputation to comment.
Thanks!