# 第5章 广义与一般线性模型
# 广义线性模型函数glm()的用法
glm(formula, family=gaussian, data, ...)
# formula为公式,即为要拟合的模型
# family为分布族,包括正态分布(Guassian)、二项分布(Binomial)、
# 泊松分布(Poisson)和伽马分布(Gamma)
# data为可选择的数据框
# logistic实例
nk <- read.table("clipboard", header=T)
attach(nk)
y <- cbind(k, n-k)
# 构建逻辑回归模型
glm.logit <- glm(y~x, family=binomial)
# 模型参数检验
summary(glm.logit)
# 应用模型来进行预测
pre <- predict(glm.logit, data.frame(x=3.5))
p <- exp(pre)/(1+exp(pre))
x1 <- -glm.logit$coef[[1]]/glm.logit$coef[[2]]
# 画出logistic回归曲线
d <- seq(0,5,len=100); d
pre <- predict(glm.logit, data.frame(x=d))
p <- exp(pre)/(1+exp(pre))
y1 <- k/n
plot(x,y1); lines(d,p)
# 例5-2
d5.2 <- read.table("clipboard",header=T); attach(d5.2)
logit.glm <- glm(y~x1+x2+x3, family=binomial, data=d5.2)
summary(logit.glm)
logit.s
# 广义线性模型函数glm()的用法
glm(formula, family=gaussian, data, ...)
# formula为公式,即为要拟合的模型
# family为分布族,包括正态分布(Guassian)、二项分布(Binomial)、
# 泊松分布(Poisson)和伽马分布(Gamma)
# data为可选择的数据框
# logistic实例
nk <- read.table("clipboard", header=T)
attach(nk)
y <- cbind(k, n-k)
# 构建逻辑回归模型
glm.logit <- glm(y~x, family=binomial)
# 模型参数检验
summary(glm.logit)
# 应用模型来进行预测
pre <- predict(glm.logit, data.frame(x=3.5))
p <- exp(pre)/(1+exp(pre))
x1 <- -glm.logit$coef[[1]]/glm.logit$coef[[2]]
# 画出logistic回归曲线
d <- seq(0,5,len=100); d
pre <- predict(glm.logit, data.frame(x=d))
p <- exp(pre)/(1+exp(pre))
y1 <- k/n
plot(x,y1); lines(d,p)
# 例5-2
d5.2 <- read.table("clipboard",header=T); attach(d5.2)
logit.glm <- glm(y~x1+x2+x3, family=binomial, data=d5.2)
summary(logit.glm)
logit.s

本文介绍了R语言中广义线性模型(GLM)的使用,特别是glm()函数,用于构建逻辑回归模型。通过实例展示了如何进行模型参数检验、预测以及绘制逻辑回归曲线。同时,还探讨了对数线性模型,并提供了一个案例分析,展示如何利用GLM解决实际问题。
最低0.47元/天 解锁文章
569

被折叠的 条评论
为什么被折叠?



