data(tecator)
ind=1:129
x=tecator$absorp.fdata[ind,]
newx=tecator$absorp.fdata[-ind,]
y=tecator$y$Fat[ind]
newy=tecator$y$Fat[-ind]
dataf=as.data.frame(tecator$y[ind,])
f=Fat~Water+x
ldata=list("df"=dataf,"x"=x)
res.plm=fregre.plm(f,ldata)
ndataf=as.data.frame(tecator$y[-ind,])
nldata=list("df"=ndataf,"x"=newx)
pred.plm=predict.fregre.plm(res.plm,nldata)
## with 2nd derivative of functional data
# x.fd=fdata.deriv(x,nderiv=2)
# f2=Fat~Protein+x.fd
# ldata2=list("df"=dataf,"x.fd"=x.fd)
# res.plm2=fregre.plm(f2,ldata2)
# newx.fd=fdata.deriv(newx,nderiv=2)
# nldata2=list("df"=ndataf,"x.fd"=newx.fd)
# pred.plm2=predict.fregre.plm(res.plm2,nldata2)
# MEP.plm=((1/length(newy))*sum((newy-pred.plm)^2))/var(newy)
# MEP.plm2=((1/length(newy))*sum((newy-pred.plm2)^2))/var(newy)
# par(mfrow=c(1,2))
# boxplot(newy-pred.plm,ylim=c(-5,5))
# boxplot(newy-pred.plm2,ylim=c(-5,5))Run the code above in your browser using DataLab