R-hjelp til exercise 5 i BSS

 

 

# Les dataene inn i en dataramme, gi navn til variablene i datarammen og se p� dataene:

rock<-read.table("http://www.math.uio.no/avdc/kurs/STK4900/data/rock.dat", col.names=c("area","peri","shape","perm"))

rock

 

# Kontroller at dataene svarer til de som er gitt i oppgaven.

 

# Gj�r variablene i datarammen tilgjengelige

attach(rock)

 

 

# Punkt a)

 

# Beskrivende statistikk, histogram og andre plott av "perm" (lag ett plott om gangen=:

summary(perm)

hist(perm)

boxplot(perm)

 

# Hvordan er fordelingen av "perm"? Symmetrisk eller skjev?

 

 

# Pr�ver med en log-transformasjon:

summary(log(perm))

hist(log(perm))

boxplot(log(perm))

 

# Hvordan er fordelingen av "log(perm)"? Symmetrisk eller skjev?

# (Vi velger g� videre med "log(perm)" i punkt c.)

 

 

 

# PUNKT b)

 

# Beregner korrelasjonen mellom de tre kovariatene og plotter dem:

cor(rock[,1:3])

plot(rock[,1:3])

 

# Er det stor korrelsajon mellom noen av kovariatene. Hva kan det betyr for regresjonsanalysen?

 

 

 

# PUNKT c)

 

# Plotter"log(perm)" mot de andre kovariatene (lag ett plott om gangen):

plot(area, log(perm))

plot(peri, log(perm))

plot(shape, log(perm))

 

# Hvilke av kovariatene ser ut til ha betydning?

 

 

# Line�r regresjon av log(perm) med alle kovariatene

# (opsjonene "x=T" og "y=T" er med p.g.a. beregningene i punkt d)

pfit1<-lm(log(perm)~area+peri+shape, x=T, y=T)

summary(pfit1)

 

# Hvilke av kovariatene ser ut til ha betydning?

# Hvordan stemmer det med spredningsplottene?

 

 

 

# PUNKT d)

 

# Etter t-verdiene ordnes variablene som: peri > area > shape

 

# Tilpasser ogs� enklere modeller:

pfit2<-lm(log(perm)~area+peri, x=T, y=T)

pfit3<-lm(log(perm)~peri, x=T, y=T)

 

 

# Beregner kryssvalidert R2:

kryssvalidR2(pfit3)

kryssvalidR2(pfit2)

kryssvalidR2(pfit1)

 

# Hvilken av de tre modellene gir den beste prediksjonen?

# Sammenlign kryssvalidert R2 med R" fra punkt c. Hva ser du?

 

 

 

# PUNKT e)

 

# Tilpass modell med andreordens ledd og interaksjoner:

pfit1<-lm(log(perm)~area+peri+shape+I(area^2)+I(peri^2)+I(shape^2)+area:peri+area:shape+peri:shape, x=T, y=T)

summary(pfit1)

 

# Hvilke variable ser ut til ha st�rst betydning?

# Etter t-verdiene ordnes variablene som:

# area:peri > area^2 > peri > area > peri^2 > area:shape > peri:shape > shape^2 > shape

 

# Tilpasser modeller etter denne ordningen:

pfit2<-lm(log(perm)~area+peri+I(area^2)+I(peri^2)+I(shape^2)+area:peri+area:shape+peri:shape,x=T,y=T)

pfit3<-lm(log(perm)~area+peri+I(area^2)+I(peri^2)+area:peri+area:shape+peri:shape,x=T,y=T)

pfit4<-lm(log(perm)~area+peri+I(area^2)+I(peri^2)+area:peri+area:shape,x=T,y=T)

pfit5<-lm(log(perm)~area+peri+I(area^2)+I(peri^2)+area:peri,x=T,y=T)

pfit6<-lm(log(perm)~area+peri+I(area^2)+area:peri,x=T,y=T)

pfit7<-lm(log(perm)~peri+I(area^2)+area:peri,x=T,y=T)

pfit8<-lm(log(perm)~I(area^2)+area:peri,x=T,y=T)

pfit9<-lm(log(perm)~area:peri,x=T,y=T)

 

# Beregner kryssvalidert R2 for modellene:

kryssvalidR2(pfit9)

kryssvalidR2(pfit8)

kryssvalidR2(pfit7)

kryssvalidR2(pfit6)

kryssvalidR2(pfit5)

kryssvalidR2(pfit4)

kryssvalidR2(pfit3)

kryssvalidR2(pfit2)

kryssvalidR2(pfit1)

 

 

# Hvilken modell gir best prediksjon

# (ikke bry deg om "merkelige" verdier av R2 for modellene med mange kovariater)

 

 

 

# PUNKT f)

 

# Gj�r selv dette punktet etter samme "oppskrift" som i punkt e

# Hvilken modell gir best prediksjon? Er det den samme som i punkt e?

 

 

 

# PUNKT g)

 

# Lag ulike plott av residualene.

# Se oppgave 5c for hjelp til R-kommandoer.