分享

R语言中Logistic回归

 脑系科数据科学 2020-05-18

# 设置工作空间

# 把“数据及程序”文件夹拷贝到F盘下,再用setwd设置工作空间

setwd("E:\\R_workspace\\R语言数据分析与挖掘实战\\chp5")

# 读入数据

Data <- read.csv("./data/bankloan.csv")[2:701, ]

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 + x4 + x5 + x6 + x7 + x8,

           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)

————————————————

版权声明:本文为CSDN博主「木里先森」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/mr_muli/article/details/80526191

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多