[R-sig-eco] adonis model specification

Jari Oksanen jari.oksanen at oulu.fi
Tue Sep 29 16:46:12 CEST 2009




On 29/09/09 17:41 PM, "Christine Griffiths"
<Christine.Griffiths at bristol.ac.uk> wrote:

> Dear Jari and Peter
> 
> Thanks for the help. It works fine now. Glad it was that simple. :-)
> 
> I have a number of queries:
> (1) I am a bit skeptical about the output in that if I run variations of
> the model, with treatment alone or treatment * block, with or without
> specifying month as strata, then I get the same p-values = 0.004975 for all
> factors. This is likely to be a foolish misinterpretation of the results or
> misspecification of the model. Should I be concerned about this?
> 
Christine,

You asked for 200 permutations, and the statistic is one (or 201st) of them,
and if your statistic is the first one (most extreme), then you get

> 1/201
[1] 0.004975124

If you ask for 199 permutations, the lowest possible value will be 1/200
which doesn't look quite as foolish.

There was a version of adonis, where one was dropped of the number of
permutations if people asked for even hundred. In that version you would
have got 199 permutations if you asked for 200. However, after discussing
with other developers, I decided that is too patronizing: what are we to say
that you should use 199 permutations if you say you want to have 200.

Cheers, Jari Oksanen

> Call:
> adonis(formula = dataset.plot.count ~ treatment * month, data =
> dataset.plot.env,      permutations = 200, method = "morisita", strata =
> dataset.plot.env[,          "Month"])
> 
>                         Df  SumsOfSqs    MeanSqs    F.Model     R2   Pr(>F)
> 
> treatment       2.0000e+00 1.5313e-01 7.6565e-02 1.1603e+01 0.1033 0.004975
> **
> month           1.0000e+00 1.7446e-01 1.7446e-01 2.6439e+01 0.1177 0.004975
> **
> treatment:month 2.0000e+00 5.3241e-02 2.6621e-02 4.0342e+00 0.0359 0.004975
> **
> Residuals       1.6700e+02 1.1020e+00 6.5987e-03            0.7432
> 
> Total           1.7200e+02 1.4828e+00                       1.0000
> 
> ---
> Signif. codes:  0 Œ***¹ 0.001 Œ**¹ 0.01 Œ*¹ 0.05 Œ.¹ 0.1 Œ ¹ 1
> 
> 
> (2) Is this the correct way to specify the null hypothesis: there is no
> difference between treatments over time? Can I account for block variation
> as a random effect?
> 
> (3) Because I am interested in testing if my blocks are reliable replicates
> of each other, ie have a similar species composition to start with. Do I
> need to specify this separately as below for time 1? I.e. not including the
> temporal pseudoreplication.
> m1<-adonis(dataset.plot.count~treatment*block,data=dataset.time1,permutation=2
> 00,method="morisita")
> 
> I am aware that these are not purely R related questions, so if there is
> any  easily digestible literature describing the technique in depth, I
> would greatly appreciate being directed towards it.
> 
> Many thanks in advance,
> 
> Cheers
> Christine
> 
> --On 29 September 2009 07:59 -0600 Peter Solymos <solymos at ualberta.ca>
> wrote:
> 
>> re right, you can supply raw data and use the method argument
>> in adonis to define dissimilarity index (which is "bray" by default).
>> 
> 



More information about the R-sig-ecology mailing list