logit回归模型的参数估计过程_logistic回归模型的参数估计是什么书里的内容

本文介绍了Logistic回归模型的应用、Odds与OR的概念,详细阐述了SPSS中进行Logistic回归的步骤及结果解读。讨论了自变量筛选的Wald、似然比和比分检验,并警告了Wald检验在共线性情况下的不足。最后,提到了模型效果判断的多项指标,包括对数似然值、预测正确率和ROC曲线。
摘要由CSDN通过智能技术生成

Logistic回归简介

Logistic回归:主要用于因变量为分类变量(如疾病的缓解、不缓解,评比62616964757a686964616fe78988e69d8331333363383438中的好、中、差等)的回归分析,自变量可以为分类变量,也可以为连续变量。因变量为二分类的称为二项logistic回归,因变量为多分类的称为多元logistic回归。

Odds:称为比值、比数,是指某事件发生的可能性(概率)与不发生的可能性(概率)之比。

OR(Odds Ratio):比值比,优势比。

2.SPSS中做Logistic回归的操作步骤

分析>回归>二元Logistic回归

选择因变量和自变量(协变量)

3.结果怎么看

一些指标和数据怎么看

“EXP(B)”即为相应变量的OR值(又叫优势比,比值比),为在其他条件不变的情况下,自变量每改变1个单位,事件的发生比“Odds”的变化率。

伪决定系数cox  Snell R2和Nagelkerke R2,这两个指标从不同角度反映了当前模型中自变量解释了因变量的变异占因变量总变异的比例。但对于Logistic回归而言,通常看到的伪决定系数的大小不像线性回归模型中的决定系数那么大。

预测结果列联表解释,看”分类表“中的数据,提供了2类样本的预测正确率和总的正确率。

建立Logistic回归方程

logit(P)=β-0+β1*X1+β2*X2+……+βm*Xm

4.自变量的筛选方法和逐步回归

与线性回归类似,在Logistic回归中应尽量纳入对因变量有影响作用的变量,而将对因变量没

在R语言中,可以使用以下两种方法估计Logistic回归模型的参数: 1. 最大似然估计法(Maximum Likelihood Estimation,MLE) 最大似然估计法是一种常用的参数估计方法,它通过最大化似然函数来估计模型参数。在Logistic回归模型中,似然函数可以表示为: L(β) = ∏[i=1 to n] {pi(yi) * (1-pi)(1-yi)} 其中,pi表示第i个观测值属于正类的概率,1-pi表示属于负类的概率。yi表示第i个观测值的实际类别(0或1)。β表示模型的参数向量。 R语言中,可以使用glm函数来实现最大似然估计法。例如,下面的代码展示了如何使用glm函数估计Logistic回归模型的参数: ``` # 读入数据 data <- read.csv("data.csv") # 构建Logistic回归模型 model <- glm(Y ~ X1 + X2 + X3, data = data, family = binomial(link = "logit")) # 查看模型参数 summary(model) ``` 其中,Y表示因变量,X1、X2、X3表示自变量。data表示数据框,family参数指定为binomial,表示二项分布。link参数指定为logit,表示使用Logistic函数作为链接函数。 2. 贝叶斯估计法(Bayesian Estimation) 贝叶斯估计法是一种基于贝叶斯定理的参数估计方法,它通过计算后验分布来估计模型参数。在Logistic回归模型中,可以使用MCMC(Markov Chain Monte Carlo)方法来生成后验分布。 R语言中,可以使用rjags包来实现贝叶斯估计法。例如,下面的代码展示了如何使用rjags包估计Logistic回归模型的参数: ``` # 读入数据 data <- read.csv("data.csv") # 构建模型字符串 model_string <- "model { # Priors beta[1] ~ dnorm(0, 1.0E-6) beta[2] ~ dnorm(0, 1.0E-6) beta[3] ~ dnorm(0, 1.0E-6) # Likelihood for (i in 1:N) { y[i] ~ dbern(p[i]) logit(p[i]) <- beta[1] + beta[2] * x1[i] + beta[3] * x2[i] } }" # 编译模型 model <- jags.model(textConnection(model_string), data = list(y = data$Y, x1 = data$X1, x2 = data$X2, N = nrow(data))) # 运行MCMC mcmc_samples <- coda.samples(model, variable.names = c("beta"), n.iter = 10000) # 查看参数的后验分布 plot(mcmc_samples) ``` 其中,Y表示因变量,X1、X2、X3表示自变量。data表示数据框,N表示数据个数。model_string是一个包含模型定义的字符串。dnorm表示正态分布,dbern表示伯努利分布,logit表示Logistic函数的逆函数。jags.model函数用于编译模型,coda.samples函数用于生成MCMC样本。最后,可以使用plot函数查看参数的后验分布。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值