R語言線性模型glm()logistic迴歸模型
阿新 • • 發佈:2018-12-27
R語言廣義線性模型glm()函式
glm(formula, family=family.generator, data,control = list(…))
formula資料關係,如y~x1+x2+x3
family:每一種響應分佈(指數分佈族)允許各種關聯函式將均值和線性預測器關聯起來。
常用的family:
binomal(link=’logit’) —-響應變數服從二項分佈,連線函式為logit,即logistic迴歸
binomal(link=’probit’) —-響應變數服從二項分佈,連線函式為probit
poisson(link=’identity’) —-響應變數服從泊松分佈,即泊松迴歸
control:控制演算法誤差和最大迭代次數
glm.control(epsilon = 1e-8, maxit = 25, trace = FALSE)
-----maxit:演算法最大迭代次數,改變最大迭代次數:control=list(maxit=100)
源自
實戰:
source("setwd.r")
##下面read.csv會出錯,因為表頭中文亂碼,刪掉表頭,重新定義
Data=read.csv("bankloan.csv")[2:701,]
##檢視前幾行tail是後幾行
head(Data)
colnames(Data)<-c("x1","x2","x3" ,"x4","x5","x6","x7","x8","y")
tail(Data)
#logistic迴歸模型
glm<-glm(y~x1+x2+x3+x4+x5+x6+x7+x8,family = binomial(link = "logit"),data = Data)
glm
summary(glm)
###逐步尋優法 forward前向選擇法backward後向選擇法
logit.step<-step(glm,direction = c("both"))
summary(logit.step)