回覆列表
-
1 # 使用者6621825111612
-
2 # 範閒不是我
(1)plot(lm.ridge(GDP~Consume+Investment+IO+Population+Jobless+Goods,
data=dat,lambda=seq(0,0.3,0.001))) # 和線性迴歸類似,這個plot可以畫出嶺跡圖,lambda=seq(0,0.3,0.001)設定範圍和間隔,可以觀察嶺跡圖,人工選擇,但是這樣主觀性較強。
(2)select(lm.ridge(GDP~Consume+Investment+IO+Population+Jobless+Goods,
data=dat,lambda=seq(0,0.3,0.001))) #利用select 函式找出最優嶺引數lambda,會有三個值,任選一個即可。
lm.ridge(GDP~Consume+Investment+IO+Population+Jobless+Goods,
data=dat,lambda=0.09) #透過(1)或(2)把選取的lmbda 引數寫到嶺迴歸函式中去,在這裡lambda=0.09。
esrequre <- function(x){ #求標準差平方估計值sum <- 0sum0 <- 0for(i in 1:length(x)){sum0 <- residu[i]^2sum <- sum + sum0}residusqure <- sum/(length(x)-2)residusqure} ester <- sqrt(esrequre(x)); ester #標準差估計值(迴歸分析表給出的標準誤差)ZRE <- residu / ester; ZRE #標準化殘差