#非线性回归模型
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
a<-read.table("2.txt",header=T)
a.nls<-nls(y~k*a^(b^t),data=a,start=list(k=149,a=0.01,b=0.8))
a.sum<-summary(a.nls)
a.sum #(1)采用龚珀兹模型形式,建立非线性模型
SST<-sum((a$y-mean(a$y))**2) #计算Rsquare
Rsquare<-1-a.sum$sigma^2*df.residual(a.nls)/SST
Rsquare
#多项式回归
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
a<-read.table("2.txt",header=T)
income.plm<-lm(y~t+I(t^2),data=a)
summary(income.plm)
#-----------------------------------------------------------#局部回归
#核回归光滑模型1
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
d<-read.table("2.txt",header=T)
par(mfrow=c(2,1));X=d[,1];Y=d[,2];
bw=list(" (a) normal", " (b) box")
plot(X,Y,main=bw[[1]]);lines(ksmooth(X,Y, "normal", bandwidth=5))
plot(X,Y,main=bw[[2]]);lines(ksmooth(X,Y, "box", bandwidth=5))
#核回归光滑模型2
par(mfrow=c(2,2))
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
a<-read.table("2.txt",header=T)
a.nls<-nls(y~k*a^(b^t),data=a,start=list(k=149,a=0.01,b=0.8))
a.sum<-summary(a.nls)
a.sum #(1)采用龚珀兹模型形式,建立非线性模型
SST<-sum((a$y-mean(a$y))**2) #计算Rsquare
Rsquare<-1-a.sum$sigma^2*df.residual(a.nls)/SST
Rsquare
#多项式回归
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
a<-read.table("2.txt",header=T)
income.plm<-lm(y~t+I(t^2),data=a)
summary(income.plm)
#-----------------------------------------------------------#局部回归
#核回归光滑模型1
setwd("I:/研一课程/2.2回归分析/R/data")#设定当前的工作目录,重要!
d<-read.table("2.txt",header=T)
par(mfrow=c(2,1));X=d[,1];Y=d[,2];
bw=list(" (a) normal", " (b) box")
plot(X,Y,main=bw[[1]]);lines(ksmooth(X,Y, "normal", bandwidth=5))
plot(X,Y,main=bw[[2]]);lines(ksmooth(X,Y, "box", bandwidth=5))
#核回归光滑模型2
par(mfrow=c(2,2))