a lineáris modellektol a nemlineáris kevert modellekig r-ben · 2011. 9. 6. ·...
TRANSCRIPT
A lineáris modellektől a nemlineáris kevertmodellekig R-ben
Harnos Andrea
Szent István Egyetem,Állatorvostudományi KarBiomatematika Tanszék
Tartalom
Bevezetés
Modellezés
Az általános lineáris modell
Általánosított lineáris modellek
Additív modellek
Kevert modellek
Nemlineáris kevert modell
Sweave
I A kurzus diái Fritz Leisch’s Sweave rendszerével készültek.Ebben a LATEX és R kódok egyetlen fájlban szerkeszthetők.
I Egy Sweave fájlból (.Rnw kiterjesztésű általában) olyan LATEXforrás fájl készíthető, amely tartalmazza az R inputokat,outputokat és ábrákat.
I Egy Sweave fájlból az R kódok automatikusan kinyerhetők.
A kurzus anyagához felhasznált könyvek és egyéb anyagok
I Brian S. Everitt, Torsten Hothorn: A Handbook of StatisticalAnalysis Using R (Chapman and Hall/CRC, 2006)
I José C. Pinheiro, Douglas M. Bates: Mixed Effects Models inS and S-PLUS (Springer, 2000)
I Julian J. Faraway: Extending the Linear Model with R.Generalized Linear, Mixed Effects and NonparametricRegression Models (Chapman and Hall/CRC, 2006)
I Douglas M. Bates: Mixed-effects models in R. useR!2006,Vienna, Austria, June 14, 2006
Felhasznált adatok
I pupa.txtI mass.csvI land-use.csv
Zerynthia polyxena
pupa.txt, mass.csv
I Az adatok egy olyan kísérletből származnak, amelyben lepkék(Zerynthia polyxena) imágóinak méret változatosságátvizsgálták.
I A lárvákat kísérletileg manipulált hőmérsékletű környezetbentartották.
I A KÍSÉRLET1. faktor: TEMPR Fejlődő hernyók környezetének hőmérséklete
I hűtöttI szobahőmérsékletI melegített
2. faktor: FOOD TáplálékellátottságI limitáltI nem limitált
I A hernyók tömegét a kikeléstől a bábozódásig mérték.I Referencia: J. Kis, F. Kassai, L. Peregovits (nem közölt
adatok)
Változók
BOX a dobozok azonosítója, amelyben a hernyókattartották
FOOD Táplálékellátottságlimited limitált
adlibitum nem limitáltTEMPR A fejlődő hernyók környezetének hőmérséklete
cooled hűtöttroom szobahőmérsékletű
heated melegítettPUPAMASS bábtömeg (g) 1 héttel a bábozódás utánSTARTMASS kezdeti tömeg (g)
Lepkebáb adatok
> pupa[1:5, ]
BOX FOOD TEMPR PUPAMASS STARTMASS1 474 limited cooled 0.176 0.0072 423 limited cooled 0.197 0.0133 420 limited cooled 0.183 0.0154 473 limited cooled 0.209 0.0155 430 limited cooled 0.205 0.017
> str(pupa)
’data.frame’: 58 obs. of 5 variables:$ BOX : int 474 423 420 473 430 4107 457 80 4101 454 ...$ FOOD : Factor w/ 2 levels "adlibitum","limited": 2 2 2 2 2 2 2 2 2 2 ...$ TEMPR : Factor w/ 3 levels "cooled","heated",..: 1 1 1 1 1 1 1 1 1 3 ...$ PUPAMASS : num 0.176 0.197 0.183 0.209 0.205 0.197 0.205 0.191 0.234 0.23 ...$ STARTMASS: num 0.007 0.013 0.015 0.015 0.017 0.025 0.034 0.039 0.044 0.014 ...
land-use.csv
I Az adatok egy olyan kutatásból származnak, melyben amezőgazdaság intenzifikációjának őszi gabona növényekre valóhatását vizsgálták a Nagy-Alföldön, szikes talajú területeken.
I 5 gazda, illetve szövetkezet különböző intenzifikációval kezeltföldjeit vizsgálták.
I 7 földhasználati intenzitás kategóriát állapítottak meg afelhasznált szerves- és műtrágya valamint növényvédő szermennyisége alapján (kérdőíves felmérés a vizsgálatok előtt).
land-use.csv
I 3 őszi gabona földet vizsgáltak minden intenzitás szintből.I Minden területen kijelöltek 2-2 – 10 db 5× 1 m-es egymástól 5
m-re egy vonalba eső kvadrátból álló – transzektet, egyet aterület szélén, a másikat pedig 50 m-rel beljebb. Ezzel azelrendezéssel figyelembe vehető a lokális térbeli heterogenitás,ami nagyban meghatározza a biodiverzitási mintázatot.
I Referencia: Anikó Kovács, Péter Batáry, András Báldi, AndreaHarnos: Weed species richness and cover along anintensification gradient in Central-Hungarian cereal fields (aWeed Research-be beküldve)
Extenzíven használt gabonaföld
Extenzíven használt gabonaföld széle
Intenzíven használt gabonaföld
Intenzíven használt gabonaföld széle
Egy elemzés lépései
I A probléma hátterének megértése.I Kérdésfeltevés.I Elemző módszerek kiválasztása (adatgyűjtés előtt!)I Adatgyűjtés.I Az adatok elemezhető formába hozása!I Exploratív elemzések (leíró statisztikák, grafikonok).I A fő elemzés (modellezés).I Interpretáció.I Az eredmények közlése.
Milyen egy jó modell?
I Tisztáznia kell a dolgokat és nem összezavarni.I Parszimóniára kell törekednie.
I Things should be made as simple as possible - but no simpler.A. Einstein
I Általánosítható.I az eredményeknek nemcsak a mintánkra kell érvényesnek
lennie, hanem arra a statisztikai populációra is, amelyből amegfigyeléseink származnak.
A modellezés folyamata
I Kiinduló modell illesztése.I A modell redukálása.I Modellellenőrzés.I Modell megváltoztatása, ha szükséges.I Új modell illesztése.I Modellredukció.I Modellellenőrzés.I . . .
Az általános lineáris modell General Linear Model
I Egy cél-, vagy függő változó (outcome, response) egyébváltozóktól (effects) való függését vizsgáljuk.
I Az általános lineáris modell speciális esetei:I Egyszerű Lineáris Regresszió Simple Linear Regression;I ANOVA;I ANCOVA;I stb.
A modell általános felírásaI A lineáris modell:
Y = β0 + β1X1 + β2X2 + . . .+ βpXp + ε,
Vagy mátrix egyenlet formájában:
Y = Xβ + ε,
aholY célváltozó,β0 intercept vagy konstans,βi ismeretlen paraméterek,
X1, . . . , Xp magyarázó változók (prediktorok), lehetnekI folytonosak (kovariánsok) vagyI kvalitatív (faktor) változók. Indikátor (dummy)
változók.ε A megfigyelt értékeknek és a modellszisztematikus részének a különbsége (mérésihiba vagy nem magyarázott hatás).
A modell praktikus alakja
PUPAMASS = β0 +β1 ·STARTMASS+β2 ·1(TEMPR=high)+
+ β3 · 1(TEMPR=room) + ε
I β4 · 1(TEMPR=cooled) hiányzik (túlparaméterezettség)
I Wilkinson-Rogers formula:
PUPAMASS = STARTMASS + TEMPR,
ahol a TEMPR egy factor.
Modell formulák R-ben
I Általános forma: y ∼ tényező1+tényező2+ . . .
I Interakció a:b, a*b=a+b+a:b
I Speciális tagok: offset, -1 (nincs konstans)I Példák:
y ∼ x - Egyszerű Lineáris Regresszióy ∼ x1+x2+x3 - Többszörös Lineáris Regresszióy ∼ f1 - Egytényezős ANOVAy ∼ f1?f2 - Kéttényezős ANOVA interakcióvaly ∼ f1?x - ANCOVA
Lepkebáb adatok
> pupa[1:5, ]
BOX FOOD TEMPR PUPAMASS STARTMASS1 474 limited cooled 0.176 0.0072 423 limited cooled 0.197 0.0133 420 limited cooled 0.183 0.0154 473 limited cooled 0.209 0.0155 430 limited cooled 0.205 0.017
> str(pupa)
’data.frame’: 58 obs. of 5 variables:$ BOX : int 474 423 420 473 430 4107 457 80 4101 454 ...$ FOOD : Factor w/ 2 levels "adlibitum","limited": 2 2 2 2 2 2 2 2 2 2 ...$ TEMPR : Factor w/ 3 levels "cooled","heated",..: 1 1 1 1 1 1 1 1 1 3 ...$ PUPAMASS : num 0.176 0.197 0.183 0.209 0.205 0.197 0.205 0.191 0.234 0.23 ...$ STARTMASS: num 0.007 0.013 0.015 0.015 0.017 0.025 0.034 0.039 0.044 0.014 ...
Változók
BOX a dobozok azonosítója, amelyben a hernyókattartották
FOOD Táplálékellátottságlimited limitált
adlibitum nem limitáltTEMPR A fejlődő hernyók környezetének hőmérséklete
cooled hűtöttroom szobahőmérsékletű
heated melegítettPUPAMASS bábtömeg (g) 1 héttel a bábozódás utánSTARTMASS kezdeti tömeg (g)
Exploratív elemzések
1. lépés: Adatok leíró statisztikái és grafikonjai.Numerikus áttekintés:> summary(pupa)
BOX FOOD TEMPR PUPAMASSMin. : 39.0 adlibitum:32 cooled:19 Min. :0.14301st Qu.: 409.2 limited :26 heated:22 1st Qu.:0.1970Median : 443.0 room :17 Median :0.2560Mean :1015.5 Mean :0.25713rd Qu.: 473.8 3rd Qu.:0.3103Max. :4202.0 Max. :0.4330
STARTMASSMin. :0.001001st Qu.:0.00700Median :0.01400Mean :0.018953rd Qu.:0.02375Max. :0.11900
Grafikus sűrűségfüggvény becslések
I Hisztogram: durva becslés - érzékeny azosztályintervallumok megválasztására.
I Kernel sűrűség becslés: jobb.Simított hisztogram.
Hisztogram
>hist(PUPAMASS,main="Bábtömeg egy héttel a bábozódásután",xlab="Tömeg (g)")
Bábtömeg egy héttel a bábozódás után
Tömeg (g)
Fre
quen
cy
0.10 0.15 0.20 0.25 0.30 0.35 0.40 0.45
0
5
10
15
Simított hisztogram
>plot(density(PUPAMASS),main="Bábtömeg egy héttel abábozódás után"); rug(PUPAMASS)
0.1 0.2 0.3 0.4 0.5
01
23
45
Bábtömeg egy héttel a bábozódás után
N = 58 Bandwidth = 0.02654
Den
sity
Boxplotok
I Kvalitatív és kvantitatv változók kapcsolata.I Faktor kombinációk is lehetnek a vízszintes tengelyen.I Különbségek és interakciók becslése.
Boxplot
>boxplot(PUPAMASS ∼(TEMPR:FOOD),col=2:4,names=c("CA","HA","RA","CL","HL","RL"))
●
●
●
●
●
●●
●
●
CA HA RA CL HL RL
0.15
0.20
0.25
0.30
0.35
0.40
Hegedűábravioplot(PUPAMASS[FOOD=="adlibitum"],PUPAMASS[FOOD=="limited"], col="white", names=c("adlibitum", "limited"))
0.15
0.20
0.25
0.30
0.35
0.40
ad libitum limited
●
●
Interakciós ábra
I A célváltozó különböző faktor kombinációk szerintiátlagait ill. más leíró statisztikáit rajzolja ki így ábrázolvaa lehetséges interakciókat (nem additív hatásokat).
I Ha a vonalak többé-kevésbé párhuzamosak, akkor nemvárunk interakciót.
Interakciós ábra
>interaction.plot(TEMPR,FOOD,PUPAMASS)0.
200.
220.
240.
260.
280.
30
TEMPR
mea
n of
PU
PA
MA
SS
cooled heated room
FOOD
adlibitumlimited
Szórásdiagram
>plot(PUPAMASS ∼ STARTMASS,main="PUPAMASS-STARTMASSSzórásdiagram", xlab="STARTMASS",ylab="PUPAMASS",pch=".")
●
●
●
●●
●●
●
●●
● ●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
0.00 0.02 0.04 0.06 0.08 0.10 0.12
0.15
0.20
0.25
0.30
0.35
0.40
PUPAMASS−STARTMASS Szórásdiagram
STARTMASS
PU
PA
MA
SS
Feltételes szórásdiagram
>coplot(PUPAMASS STARTMASS|TEMPR*FOOD,xlab="STARTMASS",ylab="PUPAMASS",pch=20)
●
●●
●
●●
●
●
● ●
0.15
0.25
0.35
●●
●
●
●
●
●
●
●
●
●
●
0.00 0.04 0.08 0.12
●●
●
●●●
●
●
●
●
●
●
●
●●●
●
●
●
0.00 0.04 0.08 0.12
●●
●
●
●●
●
●● ●
●
● ●
●
●
●
●
0.00 0.04 0.08 0.12
0.15
0.25
0.35
STARTMASS
PU
PA
MA
SS
cooled
heated
room
Given : TEMPR
adlib
itum
limite
d
Giv
en :
FO
OD
Egyszerű Lineáris Regresszió1. modell:
PUPAMASS = β0 + β1STARTMASS + ε
> mod1.lm <- lm(PUPAMASS ~ STARTMASS)> summary(mod1.lm)
Call:lm(formula = PUPAMASS ~ STARTMASS)Residuals:
Min 1Q Median 3Q Max-0.115249 -0.053640 -0.003456 0.047954 0.169238
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.26866 0.01217 22.071 <2e-16STARTMASS -0.61265 0.45143 -1.357 0.180
Residual standard error: 0.06594 on 56 degrees of freedomMultiple R-Squared: 0.03184, Adjusted R-squared: 0.01455F-statistic: 1.842 on 1 and 56 DF, p-value: 0.1802
Szórásdiagram az illesztett egyenessel
>abline(mod1.lm)
●
●
●
●●
●●
●
●●
● ●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
0.00 0.02 0.04 0.06 0.08 0.10 0.12
0.15
0.20
0.25
0.30
0.35
0.40
PUPAMASS−STARTMASS szórásdiagram
STARTMASS
PU
PA
MA
SS
Kéttényezős ANOVA
> mod2.lm <- lm(PUPAMASS ~ FOOD + TEMPR)> anova(mod2.lm)
Analysis of Variance TableResponse: PUPAMASS
Df Sum Sq Mean Sq F value Pr(>F)FOOD 1 0.161984 0.161984 98.906 8.306e-14TEMPR 2 0.001065 0.000532 0.325 0.724Residuals 54 0.088439 0.001638
Kéttényezős ANOVA interakcióval
> mod3.lm <- lm(PUPAMASS ~ FOOD * TEMPR)> anova(mod3.lm)
Analysis of Variance TableResponse: PUPAMASS
Df Sum Sq Mean Sq F value Pr(>F)FOOD 1 0.161984 0.161984 99.7353 1.088e-13TEMPR 2 0.001065 0.000532 0.3277 0.7220FOOD:TEMPR 2 0.003984 0.001992 1.2264 0.3017Residuals 52 0.084455 0.001624
Kéttényezős ANOVA interakcióval és kovariánssal
> mod4.lm <- lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)> anova(mod4.lm)
Analysis of Variance TableResponse: PUPAMASS
Df Sum Sq Mean Sq F value Pr(>F)FOOD 1 0.161984 0.161984 97.8787 1.857e-13TEMPR 2 0.001065 0.000532 0.3216 0.7264STARTMASS 1 0.000298 0.000298 0.1804 0.6729FOOD:TEMPR 2 0.003738 0.001869 1.1294 0.3312Residuals 51 0.084402 0.001655
Hipotézisvizsgálatok
I A modell egy vagy több prediktorának szignifikanciájátállapítjuk meg.
I Ha a hibatagokI függetlenek ésI normális eloszlásúak.
I Két beágyazott modell (a szűkebb modell magyarázóváltozóinak halmaza részhalmaza a bővebb modellének)összehasonlítható egy F-teszttel: anova(model1, model2).
Hipotézisvizsgálatok
I Egy általánosan végzett tesz az aktuális modellnullmodellhez való hasonlítása (nincsenek prediktorok,csak a konstans (intercept)): anova(model). (A modellegészének szignifikanciája.)
I Egyedi prediktorok F-próbával, vagy egy t-próbávalsummary(model) tesztelhetők.
I Kerüljük a t-tesztek használatát kettőnél több szintűkvalitatív predictorok (faktorok) esetén!
A modellezés céljai
I Predikció:I Megfigyelünk új X-eket és a hozzá tartozó Y -t szeretnénk
megbecsülni.I A predikciós teljesítmény javul az olyan változók
eltávolításáaval, amik nem nagyon játszanak szerepet.I Automatikus változó szelekciók jól működhetnek.
I A változók közötti kapcsolat megértése.I Manuális szelekció jobb.
I Gyakran mindkettő célunk.I Nam tanácsos teljesen automatikus szelekciós
módszerekre hagyatkozni.
Változó szelekciós módszerek I.
I Akaike Information Criterion (AIC)
AIC = −2logLik + 2p,
ahol p a paraméterek száma.I Általános, normál lineáris modelleken túl is használható.I A step() függvény ezt használja.
I Lépésenkénti keresés a lehetséges modellek terében.I Szekvenciálisan távolít el (vagy vesz be) változókat.I Minimalizálja az AIC-ot.
Változó szelekciós módszerek II.
I Tesztelésen alapulnak.I F -teszttel hasonlítják össze a beágyazott modelleket.I Nem igazán jó módszer: a beválasztott változók sorrendje
nagyon számít.I Rosszabb, mint a kritériumra épülő módszerek.I Manuális változó szelekcióra használható.I drop1(model,test="F")
Automatikus változó szelekció
> mod5.lm <- step(mod4.lm, trace = 0)> anova(mod5.lm)
Analysis of Variance TableResponse: PUPAMASS
Df Sum Sq Mean Sq F value Pr(>F)FOOD 1 0.161984 0.161984 101.35 3.585e-14Residuals 56 0.089503 0.001598
Két modell összehasonlítása
> anova(mod4.lm, mod5.lm)
Analysis of Variance TableModel 1: PUPAMASS ~ FOOD * TEMPR + STARTMASSModel 2: PUPAMASS ~ FOOD
Res.Df RSS Df Sum of Sq F Pr(>F)1 51 0.0844022 56 0.089503 -5 -0.005101 0.6165 0.6877
I Nincs szignifikáns különbség a modellek között.I Válasszuk a szűkebb modellt!
Manuális változó szelekció
> drop1(mod4.lm, test = "F")
Single term deletionsModel:PUPAMASS ~ FOOD * TEMPR + STARTMASS
Df Sum of Sq RSS AIC F value Pr(F)<none> 0.08 -364.89STARTMASS 1 5.291e-05 0.08 -366.85 0.0320 0.8588FOOD:TEMPR 2 3.738e-03 0.09 -366.38 1.1294 0.3312
Konfidencia-intervallumok
I Tartományok a paraméterek lehetséges értékeire.I A hatásnagyságok becslésére hasznosabb, mint a p-érték.I A p-értékek a statisztikai szignifikanciát mutatják, nem
pedig a gyakorlati jelentőséget.> confint(mod4.lm)
2.5 % 97.5 %(Intercept) 0.28712994 0.33963231FOODlimited -0.15362149 -0.07630159TEMPRheated -0.04029847 0.03192612TEMPRroom -0.06188462 0.01129474STARTMASS -0.54923885 0.65664283FOODlimited:TEMPRheated -0.05702646 0.04739676FOODlimited:TEMPRroom -0.02174418 0.08834948
Diagnosztika
A lineáris modell feltételeinek ellenőrzése.I Korrekt-e a modell szisztematikus része (linearitás)?I A modell véletlen részét (ε) tekintve:
I konstans variancia,I korrelálatlanság,I normalitás.
I Torzító pontok keresése (olyan pontok, amelyeknek atöbbi pontnál sokkal nagyobb hatása van az illesztettmodellre).
Diagnosztikus módszerek
I Lehetnek numerikusak vagy grafikusak.I Általában a grafikus módszereket preferáljuk, mert
informatívabbak.I reziduális ábrák,I normalitást ellenőrző ábrák.
I Gyakorlatilag lehetetlen megállapítani egy modellről, hogyteljesen korrekt-e.
I A diagnosztikák célja: leellenőrizni, hogy a modell nemdurván rossz-e.
I Több figyelmet kell fordítani arra, hogy ne kövessünk elnagy hibákat, mint arra, hogy a modellünk optimális-e.
I Négy hasznos ábra: plot(model)
Diagnosztikus ábrák
0.20 0.22 0.24 0.26 0.28 0.30 0.32
−0.
150.
000.
15
Fitted values
Res
idua
ls
●●●
●●●●●
●●●●
●
●
●
●
●●
●
●
●●
●
●●●
●
●●
●
●●
●
●
●●●●
●
●●●
●
●
●
● ●●●●
●
●●
●
●
●
●
●
Residuals vs Fitted
43
3339
●●
●
●●● ●
●
●●
● ●
●
●
●
●
● ●
●
●
●●
●
●● ●
●
●●
●
●●
●
●
● ●●●
●
●●●
●
●
●
●●● ●
●
●
●●
●
●
●
●
●
−2 −1 0 1 2
−3
02
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als Normal Q−Q
43
3339
0.20 0.22 0.24 0.26 0.28 0.30 0.32
0.0
1.0
Fitted values
Sta
ndar
dize
d re
sidu
als
●
●
●
●●●●
●
●
●
●●
●●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
● ●
●
●
●●
●
●●
●
●
●
●
Scale−Location43
3339
0.0 0.1 0.2 0.3 0.4 0.5 0.6
−4
02
Leverage
Sta
ndar
dize
d re
sidu
als
●●●
●●●●●
●●●●
●
●
●
●
●●
●
●
●●
●
●● ●
●
●●
●
●●
●
●
●●●●
●
●●●
●
●
●
●●●●
●
●
●●
●
●
●
●
●
Cook's distance10.5
0.51
Residuals vs Leverage
43
3339
Illeszkedés ellenőrzése
>plot(mod4.lm,1,pch=20)
0.20 0.22 0.24 0.26 0.28 0.30 0.32
−0.
15−
0.05
0.05
0.10
0.15
Fitted values
Res
idua
ls
●
●
●
●●●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
● ●
●●
●
●
●
●
●
●
●
●
●
lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)
Residuals vs Fitted
43
33
39
Reziduumok normalitása
>plot(mod4.lm,2,pch=20)
●
●
●
●●
●●
●
●
●
● ●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
−2 −1 0 1 2
−3
−2
−1
01
23
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als
lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)
Normal Q−Q
43
33
39
A variancia állandóságának ellenőrzése
>plot(mod4.lm,3,pch=20)
0.20 0.22 0.24 0.26 0.28 0.30 0.32
0.0
0.5
1.0
1.5
Fitted values
Sta
ndar
dize
d re
sidu
als
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)
Scale−Location43
33
39
Torzító pontok keresése
>plot(mod4.lm,5,pch=20)
0.0 0.1 0.2 0.3 0.4 0.5 0.6
−4
−2
02
Leverage
Sta
ndar
dize
d re
sidu
als
●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●● ●
●
●
●
●
●
●
●
●
●●●
●
●
●
●●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)
Cook's distance
1
0.5
0.5
1
Residuals vs Leverage
43
33
39
Hogy detektáljuk a problémákat?
I Illeszkedés ellenőrzése: A reziduumokban nem lehet trend(y = 0). Ha van, meg kell változtatni a modellt(transzformáció, nemlineáris modell etc).
I Reziduumok normalitása: QQ-ábra. A reziduumokat az"ideális" normális eloszlású megfigyelésekhez hasonlítjuk.Normális eloszlás esetén a pontok lineáris trendetkövetnek (y = x). Egyébként ferdeséget jeleznek.
I Scale-location ábra: a variancia homogenitását lehet veleellenőrizni.
Hogy detektáljuk a problémákat?
I Residuals vs. Leverage ábra: Torzító pontok keresése. Apontoknak az adott Cook távolság (Cook’s distance)szinteken belül kell lennie. A számozott pontok lehetnekgyanúsak.
I Cook-féle távolság: az illeszkedés megváltozásánakstandardizált mértéke, ha az adott megfigyelést kivesszükaz adatok közül.
Cook’s distance plot
>plot(mod4.lm,4,pch=20)
0 10 20 30 40 50 60
0.00
0.05
0.10
0.15
0.20
Obs. number
Coo
k's
dist
ance
lm(PUPAMASS ~ FOOD * TEMPR + STARTMASS)
Cook's distance
43
33
39
Lineáris modell - korlátok
Nagyon sok kapcsolatot nem írható le egyszerű lineárismodellel, mivel
I a függő változó lehet nem folytonos (és nem normális)eloszlású (pl. gyakoriságok, bináris adatok);
I a magyarázó változók hatása a függő változóra lehet,hogy nem lineáris;
I a megfigyelési egységek lehet, hogy nem függetlenek;I a variancia lehet, hogy nem konstans.
Általánosított lineáris modellek (Generalized Linear Models)
Az általános lineáris modell általánosítása:I Megengedi, hogy az eloszlás nem normális legyen (pl.
Poisson, binomiális ill., multinomiális (exponenciáliseloszláscsalád)).
I A variancia állandóságának feltétele sem olyan szigorú,mint a hagyományos lineáris modelleknél.
Hogy általánosít ez a módszer?
I A függő változót most is a magyarázó változók lineáriskombinációjából becsüljük. A függő és magyarázóváltozók egy ún. „link” függvénnyel vannakösszekapcsolva:
I η = β0 + β1X1 + β2X2 + . . .+ βkXk, lineáris egyenlet,ahol
η lineáris prediktor,X magyarázó változók,β együtthatók.
I Maximum likelihood (ML) módszerrel illesztünk.I g(Y ) = η link függvény.I glm(formula, family = gaussian, ...)
I Súgó a függvény családról: ?family
Gyakorisági adatok regressziója (count regression)
I A függő változó gyakorisági adat (pozitív egész).I Ha az összes lehetőség egy adott korlátos szám, akkor
binomiális modellt használunk.I Van-nincs (0-1) adatok esetén a binomiális modell
használatos (logisztikus regresszió).I Ha a gyakoriságok elegendően nagyok, akkor az általános
lineáris modell is jó lehet.I Egyéb esetekben a Poisson és - kevésbé gyakran - a
negatív binomiális modell használható.
Poisson regresszió
Ha Y Poisson eloszlású µ > 0 várható értékkel, akkor:
P (Y = y) =eµµy
y!, y = 0, 1, 2, ...
E(Y ) = var(Y ) = µ.
Honnan származhatnak Poisson-eloszlású adatok?
I Ha a gyakoriságok egy előre rögzített számúmegfigyelésből származnak, akkor a függő változótbinomiálisként modellezhetjük. Kis siker valószínűségek,és nagyszámú összes lehetőség esetén alkalmazhatjuk aPoisson közelítést. (Pl. ritka incidenciája egy adott fajnakegy földrajzi területen.)
I Ha gyakoriságokat számolunk egy adottidőintervallumban, területen, térrészben,anyagmennyiségben, és a siker valószínűsége arányos azintervallum hosszával, térrész térfogatával stb., ésfüggetlen más eseményektől. (Pl. bejövő telefonhívások,földrengések száma stb.)
I Fontos: Poisson-eloszlású véletlen változók összege isPoisson. (Hasznos, ha csak aggregált adataink vannak.)
Földhasználati példa
36 mintavételi terület esetén vannak adataink a következőkről:Weedcover Az adott transzekt teljes gyomborítottsága
százalékosan.Totspeciesnb A gyomnövény fajok száma.
N input Éves nitrogén bevitel.Transectpos A transzekt elhelyezkedése a földterületen.
I 0 - a transzekt közvetlenül a terület szélénhelyezkedik el,
I 1 - belül van.Transect pair Ugyanahhoz a földhöz tartozó transzekt párok
azonosítója.
Földhasználati példa
Noncrop area A tanulmányozott transzekt körül húzott 500 msugarú körbe eső nem művelt terület százalékosaránya (főleg füves terület, de lehet erdős,beépített, mocsaras vagy nyílt vizes terület).
Modellezni szeretnénk a gyomnövény fajok számát és agyomborítottságot a nitrogén bevitel, a nem művelt területaránya és a transzekt pozíció függvényében.
Az adatok struktúrája
> str(land)
’data.frame’: 42 obs. of 10 variables:$ SampleArea : Factor w/ 42 levels "AG30E ","AG30I ",..: 31 32 33 34 35 36 37 38 39 40 ...$ Weedcover : int 53 44 48 29 61 45 33 33 36 38 ...$ Totspeciesnb : int 29 21 37 28 29 21 36 29 38 13 ...$ Intensity : int 1 1 1 1 1 1 2 2 2 2 ...$ N_input : int 0 0 0 0 0 0 113 113 113 113 ...$ Herbicide_use: int 0 0 0 0 0 0 1 1 1 1 ...$ Transectpos : Factor w/ 2 levels "0","1": 1 2 1 2 1 2 1 2 1 2 ...$ Transect_pair: int 16 16 17 17 18 18 19 19 20 20 ...$ Noncrop_area : int 49 50 41 43 55 53 21 21 9 8 ...$ Farmer : Factor w/ 5 levels "AG","ET","NL",..: 5 5 5 5 5 5 5 5 5 5 ...
Density plot
>plot(density(Totspeciesnb))
0 10 20 30 40 50 60
0.00
0.01
0.02
0.03
density.default(x = Totspeciesnb)
N = 42 Bandwidth = 4.453
Den
sity
Boxplot
>plot(Totspeciesnb ∼ Transectpos)
0 1
1020
3040
50
Transectpos
Tot
spec
iesn
b
Hegedűábra
>vioplot(Totspeciesnb[Transectpos==0],Totspeciesnb[Transectpos==1],col="white")
1020
3040
50
1 2
●
●
Szórásdiagram
>plot(Totspeciesnb ∼ Noncrop area)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
0 10 20 30 40 50 60
1020
3040
50
Noncrop_area
Tot
spec
iesn
b
Feltételes szórásdiagram
>coplot(Totspeciesnb Noncrop area|Transectpos,pch=20)
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
0 10 20 30 40 50 60
1020
3040
50
●
●
●
●
●
●
●
●
●
●
●
● ●●
●
●
●
●
●●
●
0 10 20 30 40 50 60
Noncrop_area
Tot
spec
iesn
b
0
1
Given : Transectpos
Interakciós ábra
>interaction.plot(as.factor(N-input),Transectpos,Totspeciesnb)15
2025
3035
4045
as.factor(N_input)
mea
n of
Tot
spec
iesn
b
0 34 68 92 100 113 270
Transectpos
01
Lineáris modell> mod1.lm <- lm(Totspeciesnb ~ N_input * Transectpos ++ Noncrop_area)> summary(mod1.lm)
Call:lm(formula = Totspeciesnb ~ N_input * Transectpos + Noncrop_area)Residuals:
Min 1Q Median 3Q Max-13.5241 -4.7578 -0.3224 4.1886 17.9341
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 29.88544 3.68671 8.106 1.01e-09N_input -0.03013 0.02115 -1.424 0.162731Transectpos1 -15.68275 3.60955 -4.345 0.000104Noncrop_area 0.13763 0.06801 2.024 0.050266N_input:Transectpos1 0.01105 0.02881 0.384 0.703520
Residual standard error: 7.437 on 37 degrees of freedomMultiple R-Squared: 0.5816, Adjusted R-squared: 0.5364F-statistic: 12.86 on 4 and 37 DF, p-value: 1.172e-06
Reziduum vs. becsült érték ábra
>plot(mod1.lm,1,pch=20)
10 15 20 25 30 35
−10
010
20
Fitted values
Res
idua
ls
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
lm(Totspeciesnb ~ N_input * Transectpos + Noncrop_area)
Residuals vs Fitted
33
8
31
Normalitás vizsgálat (Normal QQ-plot)
>plot(mod1.lm,2)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
−2 −1 0 1 2
−2
−1
01
23
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als
lm(Totspeciesnb ~ N_input * Transectpos + Noncrop_area)
Normal Q−Q
33
8
31
Szórás-becsült érték ábra (Scale-location plot)
>plot(mod1.lm,3,pch=20)
10 15 20 25 30 35
0.0
0.5
1.0
1.5
Fitted values
Sta
ndar
dize
d re
sidu
als
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
lm(Totspeciesnb ~ N_input * Transectpos + Noncrop_area)
Scale−Location
33
8 31
Problémák
I Enyhén nemlineáris trend.I Nem konstans variancis.I Enyhén nem normális eloszlású hibatag.I Próbáljuk meg transzformálni az adatokat, pl. logaritmus
transzformáció!
Lineáris modell log transzformált függő változóval> mod2.lm <- lm(log(Totspeciesnb + 1) ~ N_input * Transectpos ++ Noncrop_area)> summary(mod2.lm)
Call:lm(formula = log(Totspeciesnb + 1) ~ N_input * Transectpos +
Noncrop_area)Residuals:
Min 1Q Median 3Q Max-0.55314 -0.20587 0.02715 0.18937 0.64625
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.406e+00 1.422e-01 23.945 < 2e-16N_input -1.374e-03 8.161e-04 -1.684 0.100570Transectpos1 -6.005e-01 1.393e-01 -4.312 0.000115Noncrop_area 4.777e-03 2.624e-03 1.821 0.076760N_input:Transectpos1 4.096e-05 1.111e-03 0.037 0.970800
Residual standard error: 0.2869 on 37 degrees of freedomMultiple R-Squared: 0.6147, Adjusted R-squared: 0.5731F-statistic: 14.76 on 4 and 37 DF, p-value: 2.685e-07
Reziduum vs. becsült érték ábra
>plot(mod2.lm,1,pch=20)
2.6 2.8 3.0 3.2 3.4 3.6
−0.
6−
0.4
−0.
20.
00.
20.
40.
6
Fitted values
Res
idua
ls
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
lm(log(Totspeciesnb + 1) ~ N_input * Transectpos + Noncrop_area)
Residuals vs Fitted
8
31
33
Normal QQ-plot
>plot(mod2.lm,2,pch=20)
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
−2 −1 0 1 2
−2
−1
01
2
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als
lm(log(Totspeciesnb + 1) ~ N_input * Transectpos + Noncrop_area)
Normal Q−Q
8
31
42
Scale-location plot
>plot(mod2.lm,3,pch=20)
2.6 2.8 3.0 3.2 3.4 3.6
0.0
0.5
1.0
1.5
Fitted values
Sta
ndar
dize
d re
sidu
als
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
lm(log(Totspeciesnb + 1) ~ N_input * Transectpos + Noncrop_area)
Scale−Location
8
31
42
A két modell összehasonlítása
> summary(mod1.lm)$adj.r.squared
[1] 0.5364204
> summary(mod2.lm)$adj.r.squared
[1] 0.573088
I Nem nagy javulás.I Jobb illeszkedés.I Nehézkes interpretáció.
Poisson modell
> mod1.pois <- glm(Totspeciesnb ~ N_input * Transectpos ++ Noncrop_area, family = poisson)> mod1.pois
Call: glm(formula = Totspeciesnb ~ N_input * Transectpos + Noncrop_area, family = poisson)Coefficients:
(Intercept) N_input Transectpos13.3428928 -0.0009255 -0.5800613
Noncrop_area N_input:Transectpos10.0057278 -0.0006015
Degrees of Freedom: 41 Total (i.e. Null); 37 ResidualNull Deviance: 198.2Residual Deviance: 76.93 AIC: 293.5
summary(mod1.pois)Call:glm(formula = Totspeciesnb ~ N_input * Transectpos + Noncrop_area,
family = poisson)Deviance Residuals:
Min 1Q Median 3Q Max-2.6342 -1.1127 -0.1734 0.8111 3.1884
Coefficients:Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.3428928 0.0975010 34.286 < 2e-16N_input -0.0009255 0.0005436 -1.702 0.08868Transectpos1 -0.5800613 0.1018254 -5.697 1.22e-08Noncrop_area 0.0057278 0.0018755 3.054 0.00226N_input:Transectpos1 -0.0006015 0.0008987 -0.669 0.50329
(Dispersion parameter for poisson family taken to be 1)
Null deviance: 198.232 on 41 degrees of freedomResidual deviance: 76.934 on 37 degrees of freedomAIC: 293.51
Number of Fisher Scoring iterations: 4
Hatások tesztelése
I A summary(model) közelítő Wald teszteket csinál. Az SE-klehet, hogy túlbecsültek, és így elvesztünk szignifikánseredményeket.
I A deviancia alapú tesztek jobbak.I A deviancia azt méri, hogy a modell mennyire van közel a
tökéleteshez. (A lineáris modell esetén: deviancia = RSS.)Chi2 eloszlású.
I A determinációs együttható (R-négyzet a lineárismodelleknél):> 1 - 77/198
[1] 0.6111111
Anova a Poisson modellre
> anova(mod1.pois, test = "Chi")
Analysis of Deviance TableModel: poisson, link: log
Response: Totspeciesnb
Terms added sequentially (first to last)
Df Deviance Resid. Df Resid. Dev P(>|Chi|)NULL 41 198.232N_input 1 15.488 40 182.744 8.302e-05Transectpos 1 96.027 39 86.717 1.133e-22Noncrop_area 1 9.332 38 77.384 0.002N_input:Transectpos 1 0.451 37 76.934 0.502
Poisson modell interakciókkal
> mod2.pois <- glm(Totspeciesnb ~ (N_input + Noncrop_area ++ Transectpos)^2, family = poisson)> anova(mod2.pois, test = "Chi")
Analysis of Deviance TableModel: poisson, link: log
Response: Totspeciesnb
Terms added sequentially (first to last)
Df Deviance Resid. Df Resid. Dev P(>|Chi|)NULL 41 198.232N_input 1 15.488 40 182.744 8.302e-05Noncrop_area 1 9.914 39 172.829 0.002Transectpos 1 95.445 38 77.384 1.521e-22N_input:Noncrop_area 1 1.016 37 76.368 0.313N_input:Transectpos 1 0.462 36 75.906 0.497Noncrop_area:Transectpos 1 3.123 35 72.783 0.077
A két modell összehasonlítása
> anova(mod1.pois, mod2.pois, test = "Chi")
Analysis of Deviance TableModel 1: Totspeciesnb ~ N_input * Transectpos + Noncrop_areaModel 2: Totspeciesnb ~ (N_input + Noncrop_area + Transectpos)^2
Resid. Df Resid. Dev Df Deviance P(>|Chi|)1 37 76.9342 35 72.783 2 4.151 0.126
Modell szelekció
> drop1(mod2.pois, test = "Chi")
Single term deletionsModel:Totspeciesnb ~ (N_input + Noncrop_area + Transectpos)^2
Df Deviance AIC LRT Pr(Chi)<none> 72.783 293.359N_input:Noncrop_area 1 73.747 292.323 0.964 0.32607N_input:Transectpos 1 74.329 292.905 1.546 0.21367Noncrop_area:Transectpos 1 75.906 294.482 3.123 0.07719
Diagnosztikus ábrák
2.4 2.6 2.8 3.0 3.2 3.4 3.6
−3
−1
01
23
Predicted values
Res
idua
ls
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Residuals vs Fitted
833
31
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
−2 −1 0 1 2
−3
−1
01
23
Theoretical Quantiles
Std
. dev
ianc
e re
sid.
Normal Q−Q
833
31
2.4 2.6 2.8 3.0 3.2 3.4 3.6
0.0
0.5
1.0
1.5
Predicted values
Std
. dev
ianc
e re
sid.
●
●
●
● ●
●
●
●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Scale−Location8
3331
0.00 0.05 0.10 0.15 0.20 0.25 0.30
−3
−1
12
34
Leverage
Std
. dev
ianc
e re
sid.
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Cook's distance1
0.5
0.5
1
Residuals vs Leverage
39
42
41
Illeszkedés ellenőrzése
>plot(mod1.pois,1,pch=20)
2.4 2.6 2.8 3.0 3.2 3.4 3.6
−3
−2
−1
01
23
Predicted values
Res
idua
ls
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
glm(Totspeciesnb ~ N_input * Transectpos + Noncrop_area)
Residuals vs Fitted
8
33
31
Parciális reziduális ábrák>library(gam)> par(mfrow=c(1,3),pty="s")>plot.gam(mod1.pois,resid=T,pch=20)>par(mfrow=c(1,1))
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
0 50 100 150 200 250
−2
−1
01
23
N_input
part
ial f
or N
_inp
ut
−2
−1
01
23
part
ial f
or T
rans
ectp
os
Transectpos
0 1
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
0 10 20 30 40 50 60
−2
−1
01
23
Noncrop_areapa
rtia
l for
Non
crop
_are
a
Illeszkedés ellenőrzése
I Az ábrák majdnem ugyanúgy használhatók, mint a lineárismodell esetén. A normalitás általában nem teljesültökéletesen.
I A parciális reziduálisok ellenőrzésére a plot.gamhasználható a gam csomagból.
Túlszóródás
I Poisson változó esetén az átlag és a variancia megegyezik.I A variancia függvényt az átlag teljesen meghatározza,
nem szabad paraméter.I Az ún. diszperziós paraméter 1.I Gyakran túlságosan szigorú ez a feltétel. Gyakran
túlszóródás (overdispersion) van.I A túlszóródást a reziduális deviancia és a hozzá tartozó
szabadsági fokból határozható meg. Többé-kevésbéegynelőnek kell lenniük.
I Ha nagyon különbözőek, akkor az ún. quasilikelihoodmódszert használhatjuk, amellyel a modellparaméterek ahiba eloszlás teljes ismerete nélkül határozhatók meg.
A diszperziós paraméter ellenőrzése
> deviance(mod1.pois)/df.residual(mod1.pois)
[1] 2.079286
Poisson modell túlszóródással> mod1.qpois <- glm(Totspeciesnb ~ N_input * Transectpos ++ Noncrop_area, family = quasipoisson)> summary(mod1.qpois)
Call:glm(formula = Totspeciesnb ~ N_input * Transectpos + Noncrop_area,
family = quasipoisson)Deviance Residuals:
Min 1Q Median 3Q Max-2.6342 -1.1127 -0.1734 0.8111 3.1884
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 3.3428928 0.1426271 23.438 < 2e-16N_input -0.0009255 0.0007952 -1.164 0.251962Transectpos1 -0.5800613 0.1489530 -3.894 0.000398Noncrop_area 0.0057278 0.0027436 2.088 0.043767N_input:Transectpos1 -0.0006015 0.0013147 -0.458 0.649948
(Dispersion parameter for quasipoisson family taken to be 2.139865)
Null deviance: 198.232 on 41 degrees of freedomResidual deviance: 76.934 on 37 degrees of freedomAIC: NA
Number of Fisher Scoring iterations: 4
Poisson modell túlszóródással> anova(mod1.qpois, test = "F")
Analysis of Deviance TableModel: quasipoisson, link: log
Response: Totspeciesnb
Terms added sequentially (first to last)
Df Deviance Resid. Df Resid. Dev FNULL 41 198.232N_input 1 15.488 40 182.744 7.2379Transectpos 1 96.027 39 86.717 44.8752Noncrop_area 1 9.332 38 77.384 4.3612N_input:Transectpos 1 0.451 37 76.934 0.2107
Pr(>F)NULLN_input 0.01065Transectpos 7.164e-08Noncrop_area 0.04370N_input:Transectpos 0.64891
A kvázi modell
I A regressziós együtthatók ugyanazok és szignifikánsakmaradtak.
I A standard hibák sokkal nagyobbak.I Ha túlszóródásos modelleket hasonlítunk össze, akkor
"Chi"-teszt helyett "F"-tesztet használunk.I A túlszóródás egy lehetséges oka: az egyedek nem
egymástól függetlenül, hanem csoportosan, klasztereződvejelennek meg.
Additív Modellek
I Hasznosak, ha a modellépítés folyamán nemlinearitásttapasztalunk.
I A lineáris modell nemparaméteres verziója.
y = β0 +
p∑j=1
fj(Xj) + ε,
ahol fj-k ”sima” függvények.I Flexibilisebb modellek.I Interpretálhatóak, hiszen fj-ket ki lehet rajzoltatni.I Szimultán talál a magyarázó változóknak jó
transzformációkat.I Az R-ben legalább három csomag van rá (gam, mgcv, gss).I Most a gam-ot használjuk.
Lineáris modell a gyomborítottságra
> mod5.lm <- lm(Weedcover ~ N_input + Transectpos + Noncrop_area)> summary(mod5.lm)
Call:lm(formula = Weedcover ~ N_input + Transectpos + Noncrop_area)Residuals:
Min 1Q Median 3Q Max-25.67 -13.31 -6.19 11.12 42.08
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 30.733211 8.002910 3.840 0.000452N_input -0.001777 0.036330 -0.049 0.961248Transectpos1 -14.509641 5.369530 -2.702 0.010238Noncrop_area 0.037191 0.159098 0.234 0.816425
Residual standard error: 17.4 on 38 degrees of freedomMultiple R-Squared: 0.1629, Adjusted R-squared: 0.09679F-statistic: 2.464 on 3 and 38 DF, p-value: 0.0771
Reziduum–becsült érték ábra
>plot(mod5.lm,1,pch=20)
20 25 30
−20
020
40
Fitted values
Res
idua
ls
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
lm(Weedcover ~ N_input + Transectpos + Noncrop_area)
Residuals vs Fitted
39
40
5
QQ-ábra
>plot(mod5.lm,2,pch=20)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
−2 −1 0 1 2
−1
01
23
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als
lm(Weedcover ~ N_input + Transectpos + Noncrop_area)
Normal Q−Q
39
40
5
Additív modell
> mod1.gam <- gam(Weedcover ~ lo(N_input) + lo(Noncrop_area) ++ Transectpos)
Additív modell – summary
Call: gam(formula = Weedcover ~ lo(N_input) + lo(Noncrop_area) + Transectpos)Deviance Residuals:
Min 1Q Median 3Q Max-25.5007 -4.5381 -0.7272 4.6331 28.4130(Dispersion Parameter for gaussian family taken to be 119.1652)
Null Deviance: 13740.40 on 41 degrees of freedomResidual Deviance: 3559.746 on 29.8724 degrees of freedomAIC: 331.9167
Number of Local Scoring Iterations: 2
DF for Terms and F-values for Nonparametric Effects
Df Npar Df Npar F Pr(F)(Intercept) 1.0lo(N_input) 1.0 5.0 10.1108 9.703e-06lo(Noncrop_area) 1.0 3.1 4.5343 0.009068Transectpos 1.0
Redukált modell a gyomborítottságra
> mod2.gam <- gam(Weedcover ~ lo(N_input) + lo(Noncrop_area))
Redukált modell a gyomborítottságra –summary
Call: gam(formula = Weedcover ~ lo(N_input) + lo(Noncrop_area))Deviance Residuals:
Min 1Q Median 3Q Max-18.513 -8.883 -1.401 7.636 34.891(Dispersion Parameter for gaussian family taken to be 178.6149)
Null Deviance: 13740.40 on 41 degrees of freedomResidual Deviance: 5514.262 on 30.8724 degrees of freedomAIC: 348.2979
Number of Local Scoring Iterations: 2
DF for Terms and F-values for Nonparametric Effects
Df Npar Df Npar F Pr(F)(Intercept) 1.0lo(N_input) 1.0 5.0 6.6791 0.0002536lo(Noncrop_area) 1.0 3.1 3.5089 0.0253447
A modellek összehasonlítása
> anova(mod1.gam, mod2.gam, test = "F")
Analysis of Deviance TableModel 1: Weedcover ~ lo(N_input) + lo(Noncrop_area) + TransectposModel 2: Weedcover ~ lo(N_input) + lo(Noncrop_area)
Resid. Df Resid. Dev Df Deviance F Pr(>F)1 29.872 3559.72 30.872 5514.3 -1.000 -1954.5 16.402 0.0003349
R-négyzet=
> 1 - 3560/13740
[1] 0.7409025
A lineáris modell R-négyzete: 0.16
A magyarázó változók transzformációi>par(mfrow=c(1,3),pty="s")plot(mod1.gam,residuals=T,se=T,pch=20)par(mfrow=c(1,1))
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
0 50 100 150 200 250
−20
−10
010
2030
N_input
lo(N
_inp
ut)
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●●
●
●
●
●
●
●
0 10 20 30 40 50 60
−30
−20
−10
010
2030
Noncrop_area
lo(N
oncr
op_a
rea)
−20
−10
010
2030
part
ial f
or T
rans
ectp
os
Transectpos
0 1
●
●
●
●
●
●
● ●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
Reziduum-becsült érték ábra
>plot(predict(mod1.gam),residuals(mod1.gam),pch=20)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
0 10 20 30 40 50
−20
−10
010
2030
predict(mod1.gam)
resi
dual
s(m
od1.
gam
)
Normalitás vizsgálat
>qqnorm(residuals(mod1.gam),pch=20)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
−2 −1 0 1 2
−20
−10
010
2030
Normal Q−Q Plot
Theoretical Quantiles
Sam
ple
Qua
ntile
s
Általánosított Additív Modellek
I Az Additív Modellek általánosítása nem normális eloszlásúfüggő változóra.
I Az additív modelléhez hasonló struktúra.I A scale argumentum határozza meg, hogy a diszperziós
paramétert becsülni kell-e (scale=-1).
Általánosított Additív modell az összfajszám függő változóra
> mod3.gam <- gam(Totspeciesnb ~ lo(N_input) + lo(Noncrop_area) ++ Transectpos, family = quasipoisson, scale = -1)
SummaryCall: gam(formula = Totspeciesnb ~ lo(N_input) + lo(Noncrop_area) +
Transectpos, family = quasipoisson, scale = -1)Deviance Residuals:
Min 1Q Median 3Q Max-2.1274 -1.0111 -0.2104 0.8387 2.2575(Dispersion Parameter for quasipoisson family taken to be 1.8426)
Null Deviance: 198.2319 on 41 degrees of freedomResidual Deviance: 54.9228 on 29.8771 degrees of freedomAIC: NA
Number of Local Scoring Iterations: 6
DF for Terms and F-values for Nonparametric Effects
Df Npar Df Npar F Pr(F)(Intercept) 1.0lo(N_input) 1.0 5.0 2.1583 0.08562lo(Noncrop_area) 1.0 3.1 1.8639 0.15525Transectpos 1.0
A magyarázó változók transzformációi>par(mfrow=c(1,3),pty="s")plot(mod3.gam,residuals=T,se=T,pch=20)par(mfrow=c(1,1))
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
0 50 100 150 200 250
−2
−1
01
2
N_input
lo(N
_inp
ut)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
0 10 20 30 40 50 60
−2
−1
01
2
Noncrop_area
lo(N
oncr
op_a
rea)
−2
−1
01
2
part
ial f
or T
rans
ectp
os
Transectpos
0 1
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
Reziduum–becsült érték ábra
>plot(predict(mod3.gam),residuals(mod3.gam),pch=20)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
2.5 3.0 3.5
−2
−1
01
2
predict(mod3.gam)
resi
dual
s(m
od3.
gam
)
Normalitás vizsgálat
>qqnorm(residuals(mod3.gam),pch=20)
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
−2 −1 0 1 2
−2
−1
01
2
Normal Q−Q Plot
Theoretical Quantiles
Sam
ple
Qua
ntile
s
Fix és random hatások
I ”Jobb”-e az A populació, mint a B populáció?I Két populációt szeretnénk összehasonlítani:
fix hatásI Nagy-e a variabilitás a populációk között?
I Specifikus összehasonlítás nem érdekes.I A populációk egy minta egy (meta-)populációból.I A populációk közötti variabilitást akarjuk figyelembe venni:
random hatás
ANOVA egy fix hatással
yi = µ0 + βj + εi
I j csoportok,I βj-k különbözőek,I βj-k függetlenek.I βj-ket megbecsülhetjük.
A megfigyelések közötti korrelációk
I Tekintsük βj-ket valószínűségi változóknak. Legyen
β ∼ N(0, σ2β).
I Így kétféle varianciánk van:I σ2
β-csoportok közöttiI σ2-megfigyelések közötti
I Egy csoporton belüli megfigyelések közötti korreláció:
σ2β/(σ
2β + σ2)
I Intraclass correlation
Miért használjunk random hatásokat?
I A random modellek megmondhatják, hogy:I A különböző forrásokból mennyi variancia származik.I Milyen megfigyelések valószínűek egy új populációban?
I Segíthetik a becslést:I Két hasonló populációban a megfigyelések is hasonlóak.
Az adatok véletlen variabilitása
I A megfigyelési egységek (subject) gyakran csoportosulnak.I Ez a csoportosulás származhat abból, hogy
I az adatoknak hierarhikus vagy beágyazott (nested) struktúrájavan. Pl. a megfigyelési egységeket egy szervezeten belülicsoportokból választjuk, és feltételezzük, hogy a csoporthoztartozás befolyásolhatja a megfigyeléseket.
I Ismételt méresek (repeated measures). Egy-egy megfigyelésiegységen többször végzünk megfigyelést. Ha a megfigyelésekidőbeli ismétlések, akkor longitudinális adatokról beszélünk.
I Bizonyos esetekben a random variabilitás mindkét fajtája jelenvan.
I Közös tulajdonság: korrelált megfigylések adott csoportonbelül.
I A függetlenséget feltételező elemzések nem megfelelőek.
Kevert modellek (Mixed effects models)
A kevert modellek fix és random hatásokat is tartalmaznak:fix hatások vagy az egész populációra, vagy annak bizonyos
részeire vonatkoznak (kezelés vs. kontroll, hím vs.nőstény stb);
random hatások bizonyos megfigyelési egységekre (subjects)vonatkoznak.
I A lineáris kevert modell (lme) egy olyan lineáris modell,amely mind fix, mind random hatásokat tartalmaz.
I Az általánosított lineáris kevert modell (glmm) egy olyanáltalánosított lineáris modell, amely mind fix, mindrandom hatásokat tartalmaz.
I A nemlineáris kevert modell (nlme) egy olyan nemlineárismodell, amely mind fix, mind random hatásokat tartalmaz.
Kevert modellek illesztése
I Restricted Maximum Likelihood (REML) módszerreltörténik az illesztés.
I A modell:Y = Xβ + Zγ + ε
Fix hatások + Random hatások + Hibatag
Random hatások a földhasználati példában
I A különböző gazdálkodók (Farmer) és transzekt párokhatása nem lett figyelembe véve.
I Ha ezeket fixeknek tekintjük, akkor becsülhetjük ahatásukat a várható értékben.
I Ha random hatásoknak tekintjük, akkor feltételezzük,hogy a várható értékük 0 .
I A hatásuk a variancia struktúrában jelentkezik.I Most csak a Farmer faktort vesszük figyelembe.
>plot(Weedcover∼Farmer,pch=20)
AG ET NL PP SD
010
2030
4050
6070
Farmer
Wee
dcov
er
Lineáris modell
> mod1.lm <- lm(Weedcover ~ N_input * Transectpos ++ Noncrop_area + Farmer)
Lineáris modell – summary> summary(mod1.lm)
Call:lm(formula = Weedcover ~ N_input * Transectpos + Noncrop_area +
Farmer)Residuals:
Min 1Q Median 3Q Max-27.109 -7.041 -0.884 5.508 40.086
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 32.530954 14.569454 2.233 0.03246N_input -0.091177 0.075699 -1.204 0.23698Transectpos1 -17.866460 6.021901 -2.967 0.00556Noncrop_area 0.009736 0.156296 0.062 0.95070FarmerET -6.453820 8.631873 -0.748 0.45995FarmerNL 24.825768 13.035739 1.904 0.06560FarmerPP -2.393432 8.919498 -0.268 0.79011FarmerSD 22.186274 8.247480 2.690 0.01112N_input:Transectpos1 0.034600 0.048059 0.720 0.47662
Residual standard error: 12.41 on 33 degrees of freedomMultiple R-Squared: 0.6303, Adjusted R-squared: 0.5407F-statistic: 7.032 on 8 and 33 DF, p-value: 2.161e-05
Anova tábla
> anova(mod1.lm)
Analysis of Variance TableResponse: Weedcover
Df Sum Sq Mean Sq F value Pr(>F)N_input 1 6.5 6.5 0.0425 0.8379581Transectpos 1 2214.9 2214.9 14.3879 0.0006028Noncrop_area 1 16.5 16.5 0.1074 0.7451385Farmer 4 6342.6 1585.7 10.3004 1.587e-05N_input:Transectpos 1 79.8 79.8 0.5183 0.4766213Residuals 33 5080.0 153.9
Reziduum vs. becsült érték ábra
>plot(mod1.lm,1,pch=20)
10 20 30 40 50
−20
020
40
Fitted values
Res
idua
ls
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●●●
●
●
●
●
●
●
lm(Weedcover ~ N_input * Transectpos + Noncrop_area + Farmer)
Residuals vs Fitted
39
37
40
Normalitás vizsgálat (QQ-plot)
>plot(mod1.lm,2,pch=20)
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●●●
●
●
●
●
●
●
−2 −1 0 1 2
−3
−2
−1
01
23
4
Theoretical Quantiles
Sta
ndar
dize
d re
sidu
als
lm(Weedcover ~ N_input * Transectpos + Noncrop_area + Farmer)
Normal Q−Q
39
37
40
Szórás–becsült érték ábra
>plot(mod1.lm,3,pch=20)
10 20 30 40 50
0.0
0.5
1.0
1.5
2.0
Fitted values
Sta
ndar
dize
d re
sidu
als
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
lm(Weedcover ~ N_input * Transectpos + Noncrop_area + Farmer)
Scale−Location
39
3740
Problémák
I Enyhén nem állandó variancia.I Nem független megfigyelések. (Transzekt párok,
ugyanahhoz a gazdálkodóhoz tartozó területek.)
Kevert modellek az R-ben
Főbb csomagok:I nlme: lme()
I Matrix, lme4: lmer()
I Mindkettő szerzője: Douglas Bates et al.I Különböző számítási módok, különböző random hatás
formulák.I Valószínűleg az lmer() hatékonyabb, de lényegesen
nehezebb használni.
Kevert modell
> library(nlme)> mod1.lme <- lme(Weedcover ~ N_input * Transectpos ++ Noncrop_area, random = ~1 | Farmer)> library(lme4)> mod1.lmer <- lmer(Weedcover ~ N_input * Transectpos ++ Noncrop_area + (1 | Farmer))random=∼1|Farmer :Egyetlen random hatás minden csoportnak: Farmer
Az lme modell
> mod1.lme
Linear mixed-effects model fit by REMLData: NULLLog-restricted-likelihood: -168.8030Fixed: Weedcover ~ N_input * Transectpos + Noncrop_area
(Intercept) N_input34.68286414 -0.05117730
Transectpos1 Noncrop_area-17.86335610 0.04170213
N_input:Transectpos10.03469429
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 13.39403 12.36867
Number of Observations: 42Number of Groups: 5
Az lmer modell> mod1.lmer
Linear mixed-effects model fit by REMLFormula: Weedcover ~ N_input * Transectpos + Noncrop_area + (1 | Farmer)
AIC BIC logLik MLdeviance REMLdeviance349.6 360 -168.8 336.8 337.6
Random effects:Groups Name Variance Std.Dev.Farmer (Intercept) 179.40 13.394Residual 152.98 12.369
number of obs: 42, groups: Farmer, 5Fixed effects:
Estimate Std. Error t value(Intercept) 34.68293 11.50429 3.0148N_input -0.05118 0.05951 -0.8600Transectpos1 -17.86336 6.00315 -2.9757Noncrop_area 0.04170 0.14433 0.2889N_input:Transectpos1 0.03469 0.04791 0.7242
Correlation of Fixed Effects:(Intr) N_inpt Trnsc1 Nncrp_
N_input -0.736Transectps1 -0.262 0.312Noncrop_are -0.640 0.431 0.002N_npt:Trns1 0.196 -0.399 -0.772 0.009
Az lme modell összegzése> summary(mod1.lme)
Linear mixed-effects model fit by REMLData: NULL
AIC BIC logLik351.6061 362.8825 -168.8030
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 13.39403 12.36867
Fixed effects: Weedcover ~ N_input * Transectpos + Noncrop_areaValue Std.Error DF t-value
(Intercept) 34.68286 11.504234 33 3.0147912N_input -0.05118 0.059510 33 -0.8599827Transectpos1 -17.86336 6.003157 33 -2.9756605Noncrop_area 0.04170 0.144327 33 0.2889415N_input:Transectpos1 0.03469 0.047909 33 0.7241658
p-value(Intercept) 0.0049N_input 0.3960Transectpos1 0.0054Noncrop_area 0.7744N_input:Transectpos1 0.4741Correlation:
(Intr) N_inpt Trnsc1 Nncrp_N_input -0.736Transectpos1 -0.262 0.312Noncrop_area -0.640 0.431 0.002N_input:Transectpos1 0.196 -0.399 -0.772 0.009
Standardized Within-Group Residuals:Min Q1 Med Q3 Max
-2.12535750 -0.52576118 -0.03714839 0.48630058 3.35898578
Number of Observations: 42Number of Groups: 5
Az lmer modell összegzése> summary(mod1.lmer)
Linear mixed-effects model fit by REMLFormula: Weedcover ~ N_input * Transectpos + Noncrop_area + (1 | Farmer)
AIC BIC logLik MLdeviance REMLdeviance349.6 360 -168.8 336.8 337.6
Random effects:Groups Name Variance Std.Dev.Farmer (Intercept) 179.40 13.394Residual 152.98 12.369
number of obs: 42, groups: Farmer, 5Fixed effects:
Estimate Std. Error t value(Intercept) 34.68293 11.50429 3.0148N_input -0.05118 0.05951 -0.8600Transectpos1 -17.86336 6.00315 -2.9757Noncrop_area 0.04170 0.14433 0.2889N_input:Transectpos1 0.03469 0.04791 0.7242
Correlation of Fixed Effects:(Intr) N_inpt Trnsc1 Nncrp_
N_input -0.736Transectps1 -0.262 0.312Noncrop_are -0.640 0.431 0.002N_npt:Trns1 0.196 -0.399 -0.772 0.009
Anova tábla
A fix hatások feltételes anova teszttel tesztelhetők az lmemodell esetén.
> anova(mod1.lme)
numDF denDF F-value p-value(Intercept) 1 33 13.526606 0.0008N_input 1 33 0.738573 0.3963Transectpos 1 33 14.477856 0.0006Noncrop_area 1 33 0.079834 0.7793N_input:Transectpos 1 33 0.524416 0.4741
> anova(mod1.lmer)
Analysis of Variance TableDf Sum Sq Mean Sq
N_input 1 112.99 112.99Transectpos 1 2214.88 2214.88Noncrop_area 1 12.21 12.21N_input:Transectpos 1 80.23 80.23
Redukált lme modell
> mod2.lme <- lme(Weedcover ~ Transectpos,+ random = ~1 | Farmer)> mod2.lme
Linear mixed-effects model fit by REMLData: NULLLog-restricted-likelihood: -164.1596Fixed: Weedcover ~ Transectpos
(Intercept) Transectpos130.53005 -14.52381
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 11.68188 12.23175
Number of Observations: 42Number of Groups: 5
Redukált lmer modell> mod2.lmer <- lmer(Weedcover ~ Transectpos ++ (1 | Farmer))> mod2.lmer
Linear mixed-effects model fit by REMLFormula: Weedcover ~ Transectpos + (1 | Farmer)
AIC BIC logLik MLdeviance REMLdeviance334.3 339.5 -164.2 338.0 328.3
Random effects:Groups Name Variance Std.Dev.Farmer (Intercept) 136.47 11.682Residual 149.62 12.232
number of obs: 42, groups: Farmer, 5Fixed effects:
Estimate Std. Error t value(Intercept) 30.530 5.899 5.176Transectpos1 -14.524 3.775 -3.848
Correlation of Fixed Effects:(Intr)
Transectps1 -0.320
Modellek összehasonlítása
> anova(mod1.lmer, mod2.lmer)
Data:Models:mod2.lmer: Weedcover ~ Transectpos + (1 | Farmer)mod1.lmer: Weedcover ~ N_input * Transectpos + Noncrop_area + (1 | Farmer)
Df AIC BIC logLik Chisq Chi Dfmod2.lmer 3 344.04 349.26 -169.02mod1.lmer 6 348.82 359.24 -168.41 1.2253 3
Pr(>Chisq)mod2.lmermod1.lmer 0.747
Az illesztett modell diagnosztikája
I Jó kiindulás a modell fix verziójának ellenőrzése.I Reziduumok ellenőrzése.I Random faktor ellenőrzése.
>plot(mod2.lme)
Fitted values
Sta
ndar
dize
d re
sidu
als
−2
−1
0
1
2
3
10 20 30 40
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●●
●
●
●
●
●
●
A hibatag normalitásának ellenőrzése
>qqnorm(mod2.lme)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−2
−1
0
1
2
−2 −1 0 1 2 3
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
A random hatások becslése
> random.effects(mod2.lme)
(Intercept)AG -5.017905ET -8.797690NL 4.564477PP -7.836253SD 17.087371
A random hatás normalitásának ellenőrzése
>qqnorm(mod2.lme, ranef(.))
Random effects
Qua
ntile
s of
sta
ndar
d no
rmal
−1.0
−0.5
0.0
0.5
1.0
−10 −5 0 5 10 15
●
●
●
●
●
(Intercept)
Problémák
I Van három kiugró érték.I Nem állandó variancia.I Nem normális reziduumok.I Nem normális random hatások.
Variancia függvények
I A csoporton belüli hiba variancia struktúra valamilyenkovariáns függvényében.
I varFunc osztályok: különböző variancia függvényekmegadása:
I Argumentum: egyoldali formula, amely meghatározza aI a kovariánst;I opcionális rétegző változót: a rétegző változó minden
szintjéhez más variancia paraméter tartozik.I e.g. form = age| sexI form = fitted(.) - a kovariáns = becsült értékek.
I Standard varFunc osztályok:I varFixed - lineáris;I varIdent - különböző variancia a rétegző változó minden
szintjéhez;I varPower - hatvány variancia függvény.I . . .
> (mod3.lme <- lme(Weedcover ~ N_input + Transectpos,+ weights = varIdent(form = ~1 | Farmer),+ random = ~1 | Farmer))
Linear mixed-effects model fit by REMLData: NULLLog-restricted-likelihood: -152.6822Fixed: Weedcover ~ N_input + Transectpos
(Intercept) N_input Transectpos135.89923846 -0.05237175 -16.05589320
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 12.92851 7.388345
Variance function:Structure: Different standard deviations per stratumFormula: ~1 | FarmerParameter estimates:
AG ET NL PP SD1.0000000 0.7059728 3.6631211 0.9700587 1.1778046Number of Observations: 42Number of Groups: 5
summary(mod3.lme)Linear mixed-effects model fit by REMLData: NULL
AIC BIC logLik323.3643 338.3364 -152.6822
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 12.92851 7.388345
Variance function:Structure: Different standard deviations per stratumFormula: ~1 | FarmerParameter estimates:
AG ET NL PP SD1.0000000 0.7059728 3.6631211 0.9700587 1.1778046Fixed effects: Weedcover ~ N_input + Transectpos
Value Std.Error DF t-value p-value(Intercept) 35.89924 7.221607 35 4.971087 0.000N_input -0.05237 0.036305 35 -1.442558 0.158Transectpos1 -16.05589 2.189421 35 -7.333398 0.000Correlation:
(Intr) N_inptN_input -0.503Transectpos1 -0.152 0.000
Standardized Within-Group Residuals:Min Q1 Med Q3 Max
-1.86720457 -0.62024295 0.07185299 0.85638389 1.67066644
Number of Observations: 42Number of Groups: 5
Standardizált reziduumok vs. becsült értékek
>plot(mod3.lme)
Fitted values
Sta
ndar
dize
d re
sidu
als
−2
−1
0
1
10 20 30 40 50
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
A hibatag normalitásának ellenőrzése
>qqnorm(mod3.lme)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−2
−1
0
1
2
−2 −1 0 1
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
A random hatás normalitásának ellenőrzése
>qqnorm(mod3.lme,∼ranef(.))
Random effects
Qua
ntile
s of
sta
ndar
d no
rmal
−1.0
−0.5
0.0
0.5
1.0
−10 −5 0 5 10 15
●
●
●
●
●
(Intercept)
Következtetések
I Csak a transzekt pozíciójának van szignifikáns hatása.I A Farmer és N input hatása nem elválasztható.I Több N input szintre lenne szükségünk minden Farmer
esetén ahhoz, hogy szétválaszthassuk a hatásokat.I Az additív modell lo(N input) és lo(Noncrop area)
tényezője szignifikáns. A Farmer hatást nem vettük be amodellbe!
Általánosított lineáris kevert modell(Generalized Linear Mixed Model)
I Lineáris kevert modell nemnormális eloszlású függőváltozóval.
I Több függvény is van ilyen modellek illesztésére:I glmmPQL (MASS package)
I Az lme és glm függvényekre épül. Ugyanolyan a struktúrája.I A túlszóródás (overdispersion) is modellezhető.
I glmmML (glmmML package)I lmer (Matrix package)
Általánosított lineáris kevert modell
> library(MASS)> mod1.glmm <- glmmPQL(Totspeciesnb ~ N_input ++ Noncrop_area + Transectpos, random = ~1 |+ Farmer, family = poisson, data = land)> mod1.glmm.lmer <- lmer(Totspeciesnb ~ N_input ++ Noncrop_area + Transectpos + (1 | Farmer),+ family = poisson, data = land)
> summary(mod1.glmm)
Linear mixed-effects model fit by maximum likelihoodData: landAIC BIC logLikNA NA NA
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 5.462416e-06 1.375773
Variance function:Structure: fixed weightsFormula: ~invwt
Fixed effects: Totspeciesnb ~ N_input + Noncrop_area + TransectposValue Std.Error DF t-value p-value
(Intercept) 3.360393 0.13574646 34 24.754919 0.0000N_input -0.001129 0.00065716 34 -1.718394 0.0948Noncrop_area 0.005739 0.00271202 34 2.116053 0.0417Transectpos1 -0.632091 0.09592256 34 -6.589594 0.0000Correlation:
(Intr) N_inpt Nncrp_N_input -0.662Noncrop_area -0.820 0.361Transectpos1 -0.252 0.004 0.009
Standardized Within-Group Residuals:Min Q1 Med Q3 Max
-1.73891556 -0.81566539 -0.07405836 0.62656493 2.57318145
Number of Observations: 42Number of Groups: 5
> summary(mod1.glmm.lmer)
Generalized linear mixed model fit using LaplaceFormula: Totspeciesnb ~ N_input + Noncrop_area + Transectpos + (1 | Farmer)
Data: landFamily: poisson(log link)
AIC BIC logLik deviance87.14 95.83 -38.57 77.14
Random effects:Groups Name Variance Std.Dev.Farmer (Intercept) 0.002051 0.045288
number of obs: 42, groups: Farmer, 5Estimated scale (compare to 1 ) 1.354733
Fixed effects:Estimate Std. Error z value Pr(>|z|)
(Intercept) 3.3634085 0.1050857 32.01 < 2e-16N_input -0.0010584 0.0005101 -2.07 0.03800Noncrop_area 0.0053966 0.0019799 2.73 0.00642Transectpos1 -0.6329749 0.0663255 -9.54 < 2e-16
Correlation of Fixed Effects:(Intr) N_inpt Nncrp_
N_input -0.697Noncrop_are -0.804 0.389Transectps1 -0.226 0.004 0.009
Boxplot
>boxplot(Totspeciesnb∼Farmer)
●
AG ET NL PP SD
1020
3040
50
Redukált modell
> (mod2.glmm <- glmmPQL(Totspeciesnb ~ Noncrop_area ++ Transectpos, random = ~1 | Farmer, family = poisson))
Linear mixed-effects model fit by maximum likelihoodData: landLog-likelihood: NAFixed: Totspeciesnb ~ Noncrop_area + Transectpos
(Intercept) Noncrop_area Transectpos13.213777951 0.006774636 -0.631679342
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 0.07566479 1.374297
Variance function:Structure: fixed weightsFormula: ~invwt
Number of Observations: 42Number of Groups: 5
> summary(mod2.glmm)
Linear mixed-effects model fit by maximum likelihoodData: landAIC BIC logLikNA NA NA
Random effects:Formula: ~1 | Farmer
(Intercept) ResidualStdDev: 0.07566479 1.374297
Variance function:Structure: fixed weightsFormula: ~invwt
Fixed effects: Totspeciesnb ~ Noncrop_area + TransectposValue Std.Error DF t-value p-value
(Intercept) 3.213778 0.11003082 35 29.207979 0.0000Noncrop_area 0.006775 0.00263462 35 2.571393 0.0145Transectpos1 -0.631679 0.09454454 35 -6.681288 0.0000Correlation:
(Intr) Nncrp_Noncrop_area -0.796Transectpos1 -0.304 0.008
Standardized Within-Group Residuals:Min Q1 Med Q3 Max
-1.7102441 -0.8769116 -0.2014858 0.6871143 2.3072523
Number of Observations: 42Number of Groups: 5
>plot(mod2.glmm)
Fitted values
Sta
ndar
dize
d re
sidu
als
−1
0
1
2
2.6 2.8 3.0 3.2 3.4 3.6
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
A hibatag normalitásának ellenőrzése
>qqnorm(mod2.glmm)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−2
−1
0
1
2
−1 0 1 2
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
A random hatás normalitásának ellenőrzése
>qqnorm(mod2.glmm,∼ranef(.))
Random effects
Qua
ntile
s of
sta
ndar
d no
rmal
−1.0
−0.5
0.0
0.5
1.0
−0.05 0.00 0.05
●
●
●
●
●
(Intercept)
A hernyók méretbeli különbségei
I Longitudinális adatokra példát szolgáltatnak egy olyantömegnövekedést vizsgáló laboratóriumai kísérletbőlszármazó mérési eredmények, amelyben farkasalamlepke(Zerynthia polyxena) hernyóit különböző hőmérsékletentartották.
I A teljes adathalmaz itt bemutatott részében 20 hernyóadatai szerepelnek (subjects). A hernyók testtömegét 4naponta mérték a kikeléstől a bebábozódásig.
I 3 különböző hőmérsékleti kezelést alkalmaztak.
"Széles" formátumú táblázat
> mass[1:5, ]
BOX TEMPR LM0 LM1 LM2 LM3 LM4 LM5 LM6 LM7 LM81 3 cooled 0.006 0.027 0.079 0.109 0.223 0.279 0.371 0.288 0.2902 4 cooled 0.014 0.067 0.157 0.200 0.342 0.287 0.310 0.290 0.2803 7 cooled 0.026 0.038 0.089 0.110 0.225 0.276 0.344 0.352 0.3004 8 cooled 0.026 0.053 0.107 0.137 0.239 0.329 0.375 0.392 0.3225 9 cooled 0.012 0.023 0.078 0.122 0.164 0.280 0.397 0.333 0.320
A széles típusú elrendezés átrendezése hosszúvá("wide" → "long")
> mass$BOX <- factor(mass$BOX)> nobs <- nrow(mass)> mass_long <- reshape(mass, idvar = "BOX",+ varying = list(names(mass[, 3:11])),+ direction = "long", , v.names = "LM")> mass_long[1:10, ]
BOX TEMPR time LM3.1 3 cooled 1 0.0064.1 4 cooled 1 0.0147.1 7 cooled 1 0.0268.1 8 cooled 1 0.0269.1 9 cooled 1 0.01210.1 10 cooled 1 0.02513.1 13 room 1 0.00414.1 14 room 1 0.01516.1 16 room 1 0.00718.1 18 room 1 0.025
groupedData objektumok
I data.frame objektum kiterjesztése.I Egy formulába foglalja egy függő változót, egy kovariánst
és egy csoportosító tényezőt : függő ∼ kovariáns|csoport.I Meg lehet külső faktorokat is adni:
I a megfigyelési egységeken alkalmazott kezelés.
I Cimkék is definiálhatók.I . . .
Egy groupedData objektum megadása
> library(nlme)> massGrouped <- groupedData(LM ~ time | BOX, outer = ~TEMPR,+ data = mass_long,+ labels = list(x = "Mérés", y = "Hernyótömeg (g)"))
>plot(massGrouped)
Mérés
Her
nyót
ömeg
(g)
0.0
0.1
0.2
0.3
0.4
2 4 6 8
●
●
●
●
●
●●
● ●
4
●●
●●
●
●
●
●●
10
2 4 6 8
● ●
●●
●
●
● ●
●
7
●●
●●
●
●
●
● ●
3
2 4 6 8
●●
●●
●
●
●●
●
8
● ●
●
●
●
●
●
● ●
9
2 4 6 8
●● ●
● ●
●
● ● ●
21● ●
●
● ●
●
●● ●
23
●●
● ●
●
●
● ● ●
26
● ● ●
●●
●
●
● ●
22
●●
●
●
●
●
● ● ●
28
● ●●
●
●
●
●
● ●
25
●●
● ●
●
●
●● ●
31
0.0
0.1
0.2
0.3
0.4
● ●●
●
●
●
●● ●
240.0
0.1
0.2
0.3
0.4
● ●
●●
●
●●
●●
30
2 4 6 8
●●
●
●●
●
●● ●
16
●●
●●
●
●
●
● ●
14
2 4 6 8
●
●
●●
●
●
●
● ●
20
●●
●
●
●
●
●
● ●
13
2 4 6 8
●
●
● ●
●
●
●
● ●
18
Az ábra tulajdonságai
I Ábra sorozat. Az egyedi ábrákat "panel"-eknek nevezzük.I Minden panelnek egyedi tengelyei vannak.I Csoportos adatok esetén a függő változónak egy
elsődleges kovariánstól való csoportonkénti függésénektulajdonságai Trellis grafika (library(lattice))segítségével könnyen áttekinthetők.
I Ugyanakkor a csoportok is összehasonlíthatók.
3 ábra a három hőmérsékleti kezelésre
>plot(massGrouped,outer=T,layout=c(3,1),key=F)
Mérés
Her
nyót
ömeg
(g)
0.0
0.1
0.2
0.3
0.4
2 4 6 8
●●●●●● ●
●
●●
●
●
●
●
●
●
●
● ●
●
●
●●
●
●
●
●●
●
●●●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●●
●
●●
●
cooled
2 4 6 8
●●●●●●●●● ●
●●●●
●●●●
●●
●●●
●
●
●
●
●●
●
●●●
●
●
●
●
●●
●
●●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●●
●
●●
●
●
●
heated
2 4 6 8
●●●
●● ●●●
●● ●
●
●
●● ●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●●●
●
room
Az adatok tulajdonságai
I Szigmoid alak. A növekedés logisztikus függvénnyelmodellezzük.
y(x) =Φ1(
1 + exp(
Φ2−xΦ3
))I az alsó aszimptota 0;I Φ1 - felső aszimptota;I Φ2 - inflekciós pont;I Φ3 - skálázási paraméter (az inflexiós pont és a
Φ1/(1 + e−1) ≈ 0.73Φ1 távolsága az x tengelyen).I A hernyómérettel növekvő variabilitás. Csoporton belüli
variancia modell.
A logisztikus függvény
Lineáris modell
> mod1.lme <- lme(LM ~ TEMPR, weights = varPower(),+ data = massGrouped)> anova(mod1.lme)
numDF denDF F-value p-value(Intercept) 1 160 366.2286 <.0001TEMPR 2 17 1.0027 0.3876
Reziduumok ábrája
>plot(mod1.lme)
Fitted values
Sta
ndar
dize
d re
sidu
als
−1
0
1
0.16 0.17 0.18 0.19 0.20
●●
●●
●
●
●
●
●
●●
●●
●●●
●●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●●●
● ●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
● ●
●
●● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
● ●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
Normalitás vizsgálat
qqnorm(mod1.lme)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−3
−2
−1
0
1
2
3
−1 0 1
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●●●
●●
●
●●
●
●
●●
●
●●
●●
●●
●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●●
●
●●●
● ●
●
●
●
●●
●
●
●●
●
●
●
●
●●
●
●●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
● ●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
selfStart objektumok
I A nemlineáris regressziós modellek egy osztálya kisegítő"inicializáló" függvénnyel.
I Tartalmazza a modell függvényt magát és a deriváltjainakkódját.
I Az iterációk megkezdése előtt az inicializáló függvénythívja meg megfelelő kezdeti becslések készítéséhez.
Egyedi illesztések> mod1.nlsList <- nlsList(LM ~ SSlogis(time, Asym, xmid,+ scal), data = massGrouped)> coef(mod1.nlsList)
Asym xmid scal4 0.3013417 3.019328 0.739517010 0.2895020 3.591827 0.78467197 0.3423090 4.405085 1.03768913 0.3185156 4.295591 0.82683338 0.3766248 4.276009 1.06946299 0.3593805 4.739875 0.987467721 0.2246673 5.616000 1.003710723 0.2595412 5.136916 1.025607026 0.3133955 4.285689 1.149097622 0.2629832 5.294313 0.701419028 0.2845404 3.691796 0.649630525 0.3226826 4.554836 0.833980931 0.3384038 4.271248 1.032381724 0.3649638 4.906504 0.891934630 0.3723890 3.774257 0.848255616 0.2923923 4.830018 1.177912214 0.2882872 4.243042 1.223420020 0.2910224 3.422182 1.015210113 0.3227602 4.390807 0.823040718 0.3271352 3.789847 0.9300969
>plot(intervals(mod1.nlsList),col=as.numeric(TEMPR))B
OX
4
10
7
3
8
9
21
23
26
22
28
25
31
24
30
16
14
20
13
18
0.15 0.20 0.25 0.30 0.35 0.40
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Asym
3 4 5 6 7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
xmid
0.5 1.0 1.5 2.0
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
scal
nlme modell> (mod1.nlme <- nlme(mod1.nlsList, na.action = na.omit,+ control = list(tolerance = 0.001)))
Nonlinear mixed-effects model fit by maximum likelihoodModel: LM ~ SSlogis(time, Asym, xmid, scal)Data: massGroupedLog-likelihood: 335.0960Fixed: list(Asym ~ 1, xmid ~ 1, scal ~ 1)
Asym xmid scal0.3106634 4.3041546 0.9230615Random effects:Formula: list(Asym ~ 1, xmid ~ 1, scal ~ 1)Level: BOXStructure: General positive-definite, Log-Cholesky parametrization
StdDev CorrAsym 0.03472737 Asym xmidxmid 0.58421223 -0.344scal 0.07711092 -0.029 0.948Residual 0.03105154
Number of Observations: 180Number of Groups: 20
Populaciós és csoporton belüli becslések
>plot(augPred(mod1.nlme,level=0:1))
Mérés
Her
nyót
ömeg
(g)
0.0
0.1
0.2
0.3
0.4
2 4 6 8
●
●
●●
●
●●
● ●
4
● ●
●●
●●
●
●●
10
2 4 6 8
● ●
●●
●
●
● ●
●
7
●●
●●
●
●
●
● ●
3
2 4 6 8
●●
●●
●
●● ●
●
8● ●
●●
●
●
●
● ●
9
●● ●
● ●
●
● ● ●
21
● ●●
● ●
●
●● ●
23
●●
● ●
●
●● ● ●
26
0.0
0.1
0.2
0.3
0.4
● ● ●●
●
●
●
● ●
220.0
0.1
0.2
0.3
0.4
●●
●
●
●
●
● ● ●
28
● ●●
●
●
●
●● ●
25
●●
● ●
●
●
●● ●
31
● ●●
●
●
●
●● ●
24
● ●
●●
●●
●●
●
30●
●●
●●
●
●● ●
16
2 4 6 8
●●
●●
●●
●● ●
14
●
●
●●
●
●
●
● ●
20
2 4 6 8
●●
●●
●
●
●
● ●
13
0.0
0.1
0.2
0.3
0.4
●●
● ●
●
●
●
● ●
18
fixed BOX
Standardizált reziduumok vs. becsült értékek
>plot(mod1.nlme,pch=20,col=1)
Fitted values
Sta
ndar
dize
d re
sidu
als
−2
−1
0
1
2
0.0 0.1 0.2 0.3
● ●
●●
●
●
●
●
●
●●
●●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
A reziduumok normalitása
>qqnorm(mod1.nlme,pch=20,col=1)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−3
−2
−1
0
1
2
3
−2 −1 0 1 2
●●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
A random hatások normalitása
>qqnorm(mod1.nlme,∼ranef(.),pch=20,col=1)
Random effects
Qua
ntile
s of
sta
ndar
d no
rmal
−2
−1
0
1
2
−0.05 0.00 0.05
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Asym
−1.0 −0.5 0.0 0.5 1.0
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
xmid
−0.15 −0.10 −0.05 0.00 0.05 0.10
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
scal
> (mod2.nlme <- update(mod1.nlme,+ weights = varPower(form = ~time)))
Nonlinear mixed-effects model fit by maximum likelihoodModel: LM ~ SSlogis(time, Asym, xmid, scal)Data: massGroupedLog-likelihood: 378.8348Fixed: list(Asym ~ 1, xmid ~ 1, scal ~ 1)
Asym xmid scal0.3274611 4.4281031 1.1078004Random effects:Formula: list(Asym ~ 1, xmid ~ 1, scal ~ 1)Level: BOXStructure: General positive-definite, Log-Cholesky parametrization
StdDev CorrAsym 0.028874955 Asym xmidxmid 0.640498532 -0.379scal 0.129289287 0.261 0.439Residual 0.004261739
Variance function:Structure: Power of variance covariateFormula: ~timeParameter estimates:
power1.198662Number of Observations: 180Number of Groups: 20
Reziduumok ábrája
>plot(mod2.nlme,pch=20,col=1)
Fitted values
Sta
ndar
dize
d re
sidu
als
−2
−1
0
1
2
0.0 0.1 0.2 0.3
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
A random hatások normalitása
>qqnorm(mod2.nlme,∼ranef(.),pch=20,col=1)
Random effects
Qua
ntile
s of
sta
ndar
d no
rmal
−2
−1
0
1
2
−0.04 −0.02 0.00 0.02 0.04
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
Asym
−1.0 −0.5 0.0 0.5 1.0 1.5
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
xmid
−0.2 −0.1 0.0 0.1
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
scal
Modellek összehasonlítása
> anova(mod1.nlme, mod2.nlme)
Model df AIC BIC logLik Test L.Ratiomod1.nlme 1 10 -650.1921 -618.2625 335.0960mod2.nlme 2 11 -735.6695 -700.5470 378.8348 1 vs 2 87.47744
p-valuemod1.nlmemod2.nlme <.0001
Fix hatás megadása a modellben
> modfix <- fixed.effects(mod2.nlme)> mod3.nlme <- update(mod2.nlme, fixed = Asym + xmid ++ scal ~ TEMPR, start = c(modfix[1], 0, 0, modfix[2],+ 0, 0, modfix[3], 0, 0))> anova(mod3.nlme)
numDF denDF F-value p-valueAsym.(Intercept) 1 152 689.1728 <.0001Asym.TEMPR 2 152 3.2536 0.0413xmid.(Intercept) 1 152 270.7553 <.0001xmid.TEMPR 2 152 1.6871 0.1885scal.(Intercept) 1 152 626.2964 <.0001scal.TEMPR 2 152 0.2687 0.7648
>plot(mod3.nlme,pch=20,col=1)
Fitted values
Sta
ndar
dize
d re
sidu
als
−2
−1
0
1
2
0.0 0.1 0.2 0.3
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
● ●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
>qqnorm(mod3.nlme,pch=20,col=1)
Standardized residuals
Qua
ntile
s of
sta
ndar
d no
rmal
−3
−2
−1
0
1
2
3
−2 −1 0 1 2
●
●
●
●
●
●
●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●●
Nemlineáris modellépítés
I Iteratív modellépítési folyamat.I Csoporton belüli modellépítés (nlsList) a megfigyelések
minden csoportjára.I Ezekből az illesztésekből meghatározzuk, hogy a
paraméterek hogyan változnak a csoportok között, illetvehogy függnek egyéb kovariánsoktól stb.
I Bonyolultabb modellek illesztése a fentiek alapján.I Ha a csoporton belüli modell nemlineáris, kezdő becslések
szükségesek.I Ismételjük meg az illesztést a fix tényező beillesztésével.