d = read.table("../data/SAheart.data",header=TRUE,sep=",")
d$y=d$adiposity-1
#Ordinary logistic regression
fit = glm(chd~sbp+tobacco+ldl+famhist+obesity+alcohol+age,
  family=binomial,data=d)
summary(fit)
anova(fit,test="Chisq")
fit2 = glm(chd~sbp+tobacco+ldl+famhist+obesity+age,
  family=binomial,data=d)
anova(fit2,test="Chisq")
AIC(fit,fit2)
summary(fit2)
fit3 = glm(chd~sbp+tobacco+ldl+famhist+age,
  family=binomial,data=d)
anova(fit3,test="Chisq")
AIC(fit,fit2,fit3)
summary(fit3)



#Natural cubic splines
library(splines)
fit.ns = glm(chd~ns(sbp,df=4)+ns(tobacco,df=4)+ns(ldl,df=4)+
             ns(obesity,df=4)+ns(alcohol,df=4)+ns(age,df=4)+famhist,
  family=binomial,data=d)
summary(fit.ns)
anova(fit.ns,test="Chisq")
termplot(fit.ns,se=TRUE)
logLik(fit,fit.ns)
AIC(fit,fit.ns)

anova(fit.ns,test="Chisq")

fit.ns2 = glm(chd~ns(sbp,df=4)+ns(tobacco,df=4)+ns(ldl,df=4)+
             ns(obesity,df=4)+ns(age,df=4)+famhist,family=binomial,data=d)
anova(fit.ns2,test="Chisq")
AIC(fit,fit.ns,fit.ns2)
#termplot(fit.ns2,se=TRUE)

fit.ns3 = glm(chd~ns(sbp,df=4)+ns(tobacco,df=4)+ns(ldl,df=4)+
             ns(age,df=4)+famhist,family=binomial,data=d)
anova(fit.ns3,test="Chisq")
AIC(fit3,fit.ns3)
termplot(fit.ns3,se=TRUE)

fit.ns4 = glm(chd~ns(sbp,df=4)+ns(tobacco,df=4)+ldl+
             ns(age,df=4)+famhist,family=binomial,data=d)
termplot(fit.ns4,se=TRUE)
AIC(fit3,fit.ns3,fit.ns4)

fit.ns5 = glm(chd~ns(sbp,df=4)+tobacco+ldl+
                ns(age,df=4)+famhist,family=binomial,data=d)
termplot(fit.ns5,se=TRUE)
AIC(fit3,fit.ns3,fit.ns4,fit.ns5)

library(mgcv)
fit.gam = gam(chd~s(sbp)+s(tobacco)+s(ldl)+famhist+
            s(obesity)+s(alcohol)+s(age),family=binomial,data=d)
plot(fit.gam)

#cubic splines
library(splines)
fit.bs = glm(chd~bs(sbp,df=4)+bs(tobacco,df=4)+bs(ldl,df=4)+
               bs(obesity,df=4)+bs(alcohol,df=4)+bs(age,df=4)+famhist,
             family=binomial,data=d)
summary(fit.bs)
termplot(fit.bs,se=TRUE)
logLik(fit.bs)




AIC(fit,fit.bs)

