[R-sig-eco] spatial correlation

trichter at uni-bremen.de trichter at uni-bremen.de
Tue Nov 21 15:10:37 CET 2017


Dear Andrew,

if i understand your code correctly, you first find a signifant  
rda(abund~dist), confirmed by NMDS ordination, but
then you cannot find significant correlation between the residuals of  
a linear model (abund~dist).

You may want to have a look at Dray et al 2012 "Community ecology in  
the age of multivariate multiscale spatial analysis", especially their  
Figure 1.
They distuingish between "spatial structure", "spatial dependence",  
and "spatial autocorrelation", the latter sometimes referred to as  
"residual Spatial autocorrelation".
As far as i have understood the literature, datasets may exhibit  
spatial trends, but may not feature autocorrelation, and vice versa,  
and sometimes the range of the residual autocorrelation
is larger than the study site and may be mixed up with spatial trends.
I hope this helps.

Tim






Zitat von Andrew Halford <andrew.halford at gmail.com>:

> Hi Listers,
>
> I am trying to better understand how spatial autocorrelation is determined.
> I have attached 2 txt files one is a fish species x sites abundance table
> and the other is a distance file with the lat and longs for each site
> (converted to cartesian coords). I have run the tests for spatial
> correlation using the methodology from the Borcard et al. Use R! book.
>
> The result was no significant spatial correlation. However an nmds
> ordination of the fish data shows 3 very strongly clustered groups of sites
> which corresponds to 3 oceanic islands. A permutation analysis of the fish
> resemblance matrix with a distance matrix was also highly significant with
> a rho=0.646 spearmans rank correlation. To my mind I would have thought
> that with such strong groupings in the data that spatial correlation would
> be present at the scale of islands? Can someone help me explain this result?
>
> My analysis below
>
> fish_hellinger <- decostand (fish,"hellinger")
> fish.xy # spatial dataset space_ed.txt
>
> #test for overall trend
> lineartest <- anova(rda(fish_hellinger,fish.xy))
>
> Permutation test for rda under reduced model
>
> Model: rda(X = fish_hellinger, Y = fish.xy)
>          Df     Var      F N.Perm Pr(>F)
> Model     2 0.17148 8.6098    199  0.005 ** ##significant linear trend
> Residual 14 0.13942
> ---
> Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
>
>  # fit linear trend to the fish data and then extract residuals for
> subsequent use in spatial analysis
>> fish_hellinger_detrended <- resid(lm(as.matrix(fish_hellinger)~
> .,data=fish.xy))
>
> # make a distance matrix from the residuals data for input to the
> correlogram call
>> fish_hellinger_D1 <- dist(fish_hellinger_detrended)
>
> # perform the mantel-based test for spatial correlation
>> (fish_correlogram <-
> mantel.correlog(fish_hellinger_D1,XY=fish.xy,nperm=99))
>
> Mantel Correlogram Analysis
>
> Call:
>
> mantel.correlog(D.eco = fish_hellinger_D1, XY = fish.xy, nperm = 99)
>
>         class.index      n.dist  Mantel.cor Pr(Mantel) Pr(corrected)
> D.cl.1   118.013676  462.000000   -0.042424       0.11          0.11
> D.cl.2   352.037024    0.000000          NA         NA            NA
> D.cl.3   586.060371    0.000000          NA         NA            NA
> D.cl.4   820.083719    0.000000          NA         NA            NA
> D.cl.5  1054.107067  384.000000    0.033639       0.30            NA
> D.cl.6  1288.130414    0.000000          NA         NA            NA
> D.cl.7  1522.153762    0.000000          NA         NA            NA
> D.cl.8  1756.177109  320.000000          NA         NA            NA
> D.cl.9  1990.200457    0.000000          NA         NA            NA
> D.cl.10 2224.223804    0.000000          NA         NA            NA
> D.cl.11 2458.247152  240.000000          NA         NA            NA



More information about the R-sig-ecology mailing list