library(splines)
library(ISLR)
data(Wage)
plot(Wage$age,Wage$wage)
fit.lm = lm(wage~age,data=Wage)
fit.spl = lm(wage~bs(age,knots=c(25,40,60)),data=Wage)

library(gam)
fit.gam = gam(wage~bs(age,knots=c(25,40,60)),data=Wage)
summary(fit.gam)
plot(fit.gam,se=TRUE)

fit.gam2 = gam(wage~bs(age,df=6),data=Wage) 

dim(bs(Wage$age,df=6))
attr(bs(Wage$age,df=6),"knots")

fit.gam2 = gam(wage~bs(age,df=7),data=Wage) 

dim(bs(Wage$age,df=7))
attr(bs(Wage$age,df=7),"knots")

fit.gam.ns = gam(wage~ns(age,knots=c(25,40,60)),data=Wage)
plot(fit.gam2,se=TRUE)
