adonis på vegansk: rekkefølge av variabler eller bruk av lag
On februar 15, 2021 by admin Jeg bruker adonis()
-funksjonen i i vegan
pakke for å bestemme 1) om vertsarter som forekommer sammen varierer i deres mikrobielle samfunn på tvers av flere nettsteder, og 2) hvis stedene er forskjellige. Jeg har undersøkt alle innlegg på CV og SO, og det er ikke noe klart svar på hvordan man kan bestemme betydningen av flere faktorer ved hjelp av adonis-funksjonen.
Jeg gjorde dette først, som foreslått av https://stackoverflow.com/questions/26768779/vegan-adonis-unbalanced-design-ss-type-ii-or-iii :
der jacc er en ulikhetsmatrise som bruker jaccard-beregningen
adonis <- adonis(jacc ~ Species + Site, data = df_compare) adonis Call: adonis(formula = jacc ~ Species + Site, data = df_compare) Permutation: free Number of permutations: 999 Terms added sequentially (first to last) Df SumsOfSqs MeanSqs F.Model R2 Pr(>F) Species 2 0.6055 0.30273 1.7690 0.04981 0.004 ** Site 4 2.1378 0.53445 3.1231 0.17587 0.001 *** Residuals 55 9.4122 0.17113 0.77432 Total 61 12.1554 1.00000 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Så snu rekkefølgen:
adonis_2 <- adonis(jacc ~ Site + Species, data = df_compare) adonis_2 Call: adonis(formula = jacc ~ Site + Species, data = df_compare) Permutation: free Number of permutations: 999 Terms added sequentially (first to last) Df SumsOfSqs MeanSqs F.Model R2 Pr(>F) Site 4 2.4385 0.60962 3.5623 0.20061 0.001 *** Species 2 0.3048 0.15238 0.8904 0.02507 0.716 Residuals 55 9.4122 0.17113 0.77432 Total 61 12.1554 1.00000 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Men jeg vet ikke hvordan jeg skal tolke det, fordi ordren betyr noe, og Jeg er ikke helt sikker på om det er forskjeller mellom arter.
Etter litt søking bestemte jeg meg for å bruke lag.
Jeg tror dette sier: er arter som forekommer samtidig når du bare sammenligne arter på de samme stedene.
species_adonis <- adonis(jacc ~ Species, strata = df_compare$Site, data = df_compare) species_adonis Call: adonis(formula = jacc ~ Species, data = df_compare, strata = df_compare$Site) Blocks: strata Permutation: free Number of permutations: 999 Terms added sequentially (first to last) Df SumsOfSqs MeanSqs F.Model R2 Pr(>F) Species 2 0.6055 0.30273 1.5464 0.04981 0.335 Residuals 59 11.5500 0.19576 0.95019 Total 61 12.1554 1.00000
Så for å stille spørsmålet om nettstedet, brukte jeg arter i blokkeringen.
Jeg tror dette sier: er nettsteder forskjellige når du bare sammenligner den samme arten
site_adonis <- adonis(jacc ~ Site, strata = df_compare$Species, data = df_compare) Call: adonis(formula = jacc ~ Site, data = df_compare, strata = df_compare$Species) Blocks: strata Permutation: free Number of permutations: 999 Terms added sequentially (first to last) Df SumsOfSqs MeanSqs F.Model R2 Pr(>F) Site 4 2.4385 0.60962 3.5761 0.20061 0.001 *** Residuals 57 9.7169 0.17047 0.79939 Total 61 12.1554 1.00000 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Min konklusjon er at det mikrobielle samfunnet på en gitt art er forskjellig mellom nettsteder, men at det mikrobielle samfunnet ikke er forskjellig mellom vertsarter.
Er tilnærmingen min riktig, eller tolker jeg feil bruk av lag (dvs. blokkering)?
Eller er det en måte å gjennomsnittlig over testene når jeg byttet rekkefølgen på variablene ?
Svar
Som du har bemerket deg selv, ved å kjøre to adonis-modeller med dine faste faktorer invertert, ser du at begge variansen tildelt hver faktor, og P-verdiene varierer hver gang. Dette skjer i ubalanserte design som din, der frihetsgrader knyttet til hver faktor er forskjellige.
Fra beskrivelsen av eksperimentet ser det ut som et klassisk tilfelle av et nestet design der Species er nestet i Site. I dette tilfellet skal modellen du leter etter se slik ut:
adonis <- adonis(jacc ~ Site / Species, strata = Site, data = df_compare)
.
Vær oppmerksom på at nestingen bør være angitt i modellformuleringen så vel som i lagene (se svar av Jari Oksanen ).
Kommentarer
- kan du oppdatere lenken til Oksanen-svaret?
- Beklager, jeg finner ikke en ny lenke. Forumet er stengt.
Legg igjen en kommentar