# 设置工作空间
# 把“数据及程序”文件夹拷贝到F盘下,再用setwd设置工作空间
#setwd("E:\\R_workspace\\R语言数据分析与挖掘实战\\chp5")
# 读入数据
#Data <- read.csv("./data/bankloan.csv")[2:701, ]
Data <- file('shuju.txt','r')#要把该文件与程序文件放在同一个文件夹内
View(Data)
# 查看数据框中 完整的记录数
sum(complete.cases(Data))
# 查看数据框中 不完整的记录数
sum(!complete.cases(Data))
# sum(is.na(Data))
# 查看数据框中 缺失比例
mean(!complete.cases(Data))
# 查看数据框中 不完整的记录详情
Data[!complete.cases(Data),]
# 数据命名
colnames(Data) <- c("x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "y")
View(Data)
# logistic回归模型
# 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 <- glm(y ~ x1 + x2 + x3 ,
family = binomial(link = logit), data = Data)
summary(glm)
# 逐步寻优法 forward前向选择法backward后向选择法
logit.step <- step(glm, direction = "both")
summary(logit.step)
# 前向选择法
logit.step <- step(glm, direction = "forward")
summary(logit.step)
# 后向选择法
logit.step <- step(glm, direction = "backward")
summary(logit.step)
R语言 logistics回归
最新推荐文章于 2024-02-23 20:35:11 发布