#demo 6 tehtävä 1.


yoeng<-read.table("http://users.jyu.fi/~junyblom/yoeng.dat",header=T)
attach(yoeng)
KOULU <- factor(KOULU)
SP <- factor(SP)
malli<-lm(PENGL~SP+KOULU+ENGLANTI+SP*ENGLANTI)

summary(malli)

interaction.plot(x.factor=ENGLANTI,trace.factor=SP,response=PENGL)

malli0<-lm(PENGL~SP+KOULU+ENGLANTI)

anova(malli0,malli,test="F")

#p=0.89, joten merkitsevää interaktiota ei ole.


###################

## Teht2
yoruotsi <- read.table("http://users.jyu.fi/~junyblom/yoruotsi.dat",
header=T)
attach(yoruotsi)
yoruotsi$sp<-as.factor(yoruotsi$sp)
yoruotsi$koulu<-as.factor(yoruotsi$koulu)
malli2<-lm(pruotsi~sp+koulu+koulu*sp,data=yoruotsi)
summary(malli2)
# Erotukset
# Koulu1: -10.120  
# Koulu2: -10.120-3.582-19.875 + 3.582  = -29.995
# Koulu3: -10.120 + 9.820 -20.340 - 9.820  = - 30.46
# Koulu4: -10.120 - 1.546 -0.300  + 1.546  = - 10.42
keskiarvot<-tapply(pruotsi,INDEX=list(sp,koulu) , FUN=mean)
keskiarvot[2,]-keskiarvot[1,]
malli2H0<-lm(pruotsi~sp+koulu,data=yoruotsi)
anova(malli2H0,malli2)
# Yhteisvaikutus ei ehkä merkitsevä
interaction.plot(pruotsi,x.factor=koulu,trace.factor=sp)

####################### TEHT 3 ##########################################

yoruo = read.table("http://users.jyu.fi/~junyblom/yoruotsi.dat", header=T)

#a)

sp  = factor(yoruo$sp)
koulu = factor(yoruo$koulu)
yoruo.lm = lm(pruotsi ~ sp + koulu +  sp*koulu + I(ruotsi-8))
summary(yoruo.lm)

# Testataan interaktion merkitsevyyttä 

RSS = sum(yoruo.lm$res^2)
df = yoruo.lm$df

yoruo.lm0 = lm(pruotsi~ koulu + sp + I(ruotsi-8))
RSS0 = sum(yoruo.lm0$res^2)
df0 = yoruo.lm0$df

Fobs = ((RSS0-RSS)/(df0-df))/(RSS/df)
pval = 1-pf(Fobs,df1=df0-df,df2=df)
pval

#olisi saanut myös näin: anova(yoruo.lm0,yoruo.lm,test="F")
# yhdysvaikutus ei tilastollisesti merkitsevä (p=0.34 > 0.05)


#b)

yoruo.lm2 = lm(pruotsi ~ sp + koulu +  I(ruotsi-8))
summary(yoruo.lm2)

# saman koulun oppilailla ja samaa sukupuolta olevilla
# yhden arvosanan lisäys
# parantaa ruotsin pistemäärää keskimäärin 22.5 pistettä

# yhtä hyvin ylä-asteella menestyneillä 
# ja saman koulun oppilailla tytöt saavat
# keskimäärin 3.5 pistettä enemmän ruotsin kirjoituksissa
# (ero ei tosin merkitsevä)

#samaa sukupuolta olevilla ja yhtä 
#hyvin ylä-asteella menestyneillä
#koulujen parhausjärjestys on 3,4,1,2

# TEHTÄVÄ 4

library(foreign)
hvaineisto <- read.dta("http://www.stat.columbia.edu/~gelman/arm/examples/earnings/heights.dta")


# a)

hvaineisto[(hvaineisto$yearbn==99),] <- NA # syntymävuosi 99 ei ole mahdollinen						  			    # havainnot (ja samalla
							
hvaineisto$heightcm <- hvaineisto$height*2.54 # pituus cm:ksi
plot(hvaineisto$heightcm)

# b)

hvaineisto$avheight <- (hvaineisto$heightcm)-(mean(hvaineisto$heightcm,na.rm=TRUE))
ansiomalli <- lm(earn ~ avheight, data=hvaineisto)
summary(ansiomalli)

ansiomalli2 <- lm(earn ~ heightcm, data=hvaineisto)
plot(hvaineisto$heightcm, hvaineisto$earn)

plot(hvaineisto$heightcm, hvaineisto$earn)
abline(coef(ansiomalli2))
plot(fitted(ansiomalli2),resid(ansiomalli2))

ansiomalli3 <- lm(log(1+earn) ~ heightcm, data=hvaineisto)
plot(fitted(ansiomalli3),resid(ansiomalli3))




