欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

R語(yǔ)言非線性模型的實(shí)現(xiàn)

 更新時(shí)間:2021年08月11日 10:43:31   作者:大白羊_Aries  
本文主要介紹了R語(yǔ)言非線性模型的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

什么是非線性回歸

在非線性回歸中,分析師通常采用一個(gè)確定的函數(shù)形式和相應(yīng)的參數(shù)來(lái)擬合數(shù)據(jù)。最常用的參數(shù)估計(jì)方法是利用非線性最小二乘法(R中的nls函數(shù))。該方法使用線性函數(shù)來(lái)逼近非線性函數(shù),并且通過(guò)不斷迭代這個(gè)過(guò)程來(lái)得到參數(shù)的最優(yōu)解(本段來(lái)自維基百科)。非線性回歸的良好性質(zhì)之一是估計(jì)出的參數(shù)都有清晰的解釋(如Michaelis-Menten模型的Vmax是指最大速率),而變換數(shù)據(jù)后得到的線性模型其參數(shù)往往難以解釋。

實(shí)例一

首先,繪制出原數(shù)據(jù)的散點(diǎn)圖。代碼試下如下:

data9.3<-read.csv("C:/Users/Administrator/Desktop/data9.3.csv",head=TRUE)
attach(data9.3)
plot(x,y)

輸出結(jié)果為:

在這里插入圖片描述

可以看出,這時(shí) y 與 x之間呈現(xiàn)出非線性,因此需要對(duì)數(shù)據(jù)進(jìn)行非線性回歸分析。

代碼實(shí)現(xiàn)如下:

nls9.3<-nls(y~a-a/(1+(x/c)^b),start=list(a=100,b=5,c=4.8))
summary(nls9.3)
e<-resid(nls9.3)
ebar<-mean(e)
SE<-deviance(nls9.3)  # 殘差平方和,由于e的均值不等于0,所以SE不等于殘差的離差平方和
SSE<-sum((e-ebar)^2)  # 殘差的離差平方和
prey<-fitted(nls9.3)  # y的預(yù)測(cè)值
pybar<-mean(prey)  # y的預(yù)測(cè)值的均值
ybar<-mean(y)  # y的均值
SST<-sum((y-ybar)^2)  # 總離差平方和
Rsquare<-1-SE/SST  # 相關(guān)指數(shù)

輸出結(jié)果為:

在這里插入圖片描述

在這里插入圖片描述

  由以上輸出結(jié)果可知,對(duì)參數(shù)的估計(jì)經(jīng)過(guò)6步迭代計(jì)算后收斂,而且相關(guān)指數(shù) R 2 = 0.9986,說(shuō)明非線性回歸擬合效果很好。同時(shí),上述結(jié)果中對(duì)參數(shù)的顯著性檢驗(yàn)顯示參數(shù)均通過(guò)顯著性檢驗(yàn)。

  但是,在小樣本的情況下,不可線性化的非線性回歸的殘差通暢不滿足正態(tài)性,進(jìn)而使用 t分布進(jìn)行檢驗(yàn)也是無(wú)效的,因此顯著性檢驗(yàn)的結(jié)果并不具有重要意義。

  另外,聽過(guò)對(duì)中間量的查看,回歸的利差平方和 S S R = 15156.55 ,而總離差平方和 S S T = 14917.89<S S R ,可見非線性回歸不再滿足平方和分解式。

  該實(shí)例中殘差均值為 0.2856 ≠ 0,當(dāng)然,如果回歸擬合的效果好,殘差均值會(huì)接近0.

  通過(guò)上述分析可以認(rèn)為, y與 x符合下面的非線性回歸:

實(shí)例二——Gompertz模型

回歸實(shí)現(xiàn)的代碼如下:

data9.4<-read.csv("C:/Users/Administrator/Desktop/data9.4.csv",head=TRUE)
y<-data9.4[,2]
t<-data9.4[,1]
model<-nls(y~k*(a^(b^t)),start=list(a=0.5,b=0.5,k=120),lower=c(0,0,116),upper=c(1,1,10000),algorithm="port")
summary(model)
c<-coef(model)  # 將模型的回歸系數(shù)賦值給c
tt<-c(1:30)
yp<-c[3]*(c[1]^(c[2]^tt))  # 計(jì)算時(shí)間取值為tt時(shí)對(duì)應(yīng)的y的預(yù)測(cè)值
t1=t+1979  # 計(jì)算對(duì)應(yīng)的年份
t2<-tt+1979
plot(t1,y,type="o",ann=FALSE,ylim=c(0,160),xlim=c(1975,2015))
lines(t2,yp)

輸出結(jié)果為:

在這里插入圖片描述

擬合結(jié)果為:

在這里插入圖片描述

  這里可以不用糾結(jié)這個(gè)模型是怎么得到的,這是一個(gè)計(jì)量經(jīng)濟(jì)學(xué)上的模型,已經(jīng)給出了確切的表達(dá)式為 。

  舉這個(gè)例子的目的是了解由于回歸迭代中的參數(shù)超過(guò)范圍而導(dǎo)致代碼運(yùn)算產(chǎn)生無(wú)限不收斂的情況時(shí),如何對(duì)參數(shù)取值做出限定,并使用高斯-牛頓迭代算法(設(shè)定參數(shù)algorithm=“port”)。

到此這篇關(guān)于R語(yǔ)言非線性模型的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)R語(yǔ)言非線性模型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論