如何用 R 做 如何做logistic回归 回归

【连载6】如何用spss做logistic回归
前边我们用两篇笔记讨论了线性回归的内容。线性回归是很重要的一种回归方法,但是线性回归只适用于因变量为连续型变量的情况,那如果因变量为分类变量呢?比方说我们想预测某个病人会不会痊愈,顾客会不会购买产品,等等,这时候我们就要用到回归分析了。
Logistic回归主要分为三类,一种是因变量为二分类得回归,这种回归叫做二项回归,一种是因变量为无序多分类得回归,比如倾向于选择哪种产品,这种回归叫做多项回归。还有一种是因变量为有序多分类的回归,比如病重的程度是高,中,低呀等等,这种回归也叫累积回归,或者序次回归。
二值回归:
选择分析——回归——二元,打开主面板,因变量勾选你的二分类变量,这个没有什么疑问,然后看下边写着一个协变量。有没有很奇怪什么叫做协变量?在二元回归里边可以认为协变量类似于自变量,或者就是自变量。把你的自变量选到协变量的框框里边。
细心的朋友会发现,在指向协变量的那个箭头下边,还有一个小小的按钮,标着,这个按钮的作用是用来选择交互项的。我们知道,有时候两个变量合在一起会产生新的效应,比如年龄和结婚次数综合在一起,会对健康程度有一个新的影响,这时候,我们就认为两者有交互效应。那么我们为了模型的准确,就把这个交互效应也选到模型里去。我们在右边的那个框框里选择变量,按住,在选择变量,那么我们就同时选住这两个变量了,然后点那个的按钮,这样,一个新的名字很长的变量就出现在协变量的框框里了,就是我们的交互作用的变量。
然后在下边有一个方法的下拉菜单。默认的是进入,就是强迫所有选择的变量都进入到模型里边。除去进入法以外,还有三种向前法,三种向后法。一般默认进入就可以了,如果做出来的模型有变量的值不合格,就用其他方法在做。再下边的选择变量则是用来选择你的个案的。一般也不用管它。
选好主面板以后,单击分类(右上角),打开分类对话框。在这个对话框里边,左边的协变量的框框里边有你选好的自变量,右边写着分类协变量的框框则是空白的。你要把协变量里边的字符型变量和分类变量选到分类协变量里边去(系统会自动生成哑变量来方便分析,什么事哑变量具体参照前文)。这里的字符型变量指的是用值标签标注过得变量,不然光文字,系统也没法给你分析啊。选好以后,分类协变量下边还有一个更改对比的框框,我们知道,对于分类变量,需要有一个参照,每个分类都通过和这个参照进行比较来得到结果,更改对比这个框框就是用来选择参照的。默认的对比是指示符,也就是每个分类都和总体进行比较,除了指示符以外还有简单,差值等。这个框框不是很重要,默认就可以了。
点击继续。然后打开保存对话框,勾选概率,组成员,包含协方差矩阵。点击继续,打开选项对话框,勾选分类图,估计值的相关性,迭代历史,()的,在模型中包含常数,输出——在每个步骤中。如果你的协变量有连续型的,或者小样本,那还要勾选拟合度,这个拟合度表现的会较好一些。
继续,确定。
然后,就会输出结果了。主要会输出六个表。
第一个表是模型系数综合检验表,要看他模型的值是不是小于,判断我们这个回归方程有没有意义。
第二个表示模型汇总表。这个表里有两个,叫做广义决定系数,也叫伪,作用类似于线性回归里的决定系数,也是表示这个方程能够解释模型的百分之多少。由于计算方法不同,这两个广义决定系数的值往往不一样,但是出入并不会很大。
在下边的分类表则表述了模型的稳定性。这个表最后一行百分比校正下边的三个数据列出来在实际值为或者时,模型预测正确的百分比,以及模型总的预测正确率。一般认为预测正确概率达到百分之五十就是良好(标准真够低的),当然正确率越高越好。
在然后就是最重要的表了,方程中的变量表。第一行那个下边是每个变量的系数。第五行的值会告诉你每个变量是否适合留在方程里。如果有某个变量不适合,那就要从新去掉这个变量做回归。根据这个表就可以写出方程了:常量变量变量。。。常量变量变量。。。。如果大家学过一点统计,那就应该对这个形式的方程不陌生。提供变量,它最后算出来会是一个介于和的数,也就是你的模型里设定的值比较大的情况发生的概率,比如你想推算会不会治愈,你设治愈,为没有治愈。那你的模型算出来就是没有治愈的概率。如果你想直接计算治愈的概率,那就需要更改一下设定,用去代表治愈。
此外倒数后两列有一个(),也就是值,哦,这个可不是或者的意思,值是优势比。在线性回归里边我们用标准化系数来对比两个自变量对于因变量的影响力的强弱,在回归里边我们用优势比来比较不同的情况对于因变量的影响。举个例子。比如我想看性别对于某种病是否好转的影响,假设代表女,代表男,代表不好转,代表好转。发现这个变量的值为,那么也就是说男人的好转的可能是女人好转的倍。注意,这里都是以数值较大的那个情况为基准的。而且值可以直接给出这个倍数。如果是各代表一类情况的时候,那就是是的倍,是的倍,以此类推。值对于方程没什么贡献,但是有助于直观的理解模型。在使用值得时候一定要结合它的置信区间来进行判断。
此外还有相关矩阵表和概率直方图,就不再介绍了。
多项回归:
选择分析——回归——多项,打开主面板,因变量大家都知道选什么,因变量下边有一个参考类别,默认的第一类别就可以。再然后出现了两个框框,因子和协变量。很明显,这两个框框都是要你选因变量的,那么到底有什么区别呢?嘿嘿,区别就在于,因子里边放的是无序的分类变量,比如性别,职业什么的,以及连续变量(实际上做回归时大部分自变量都是分类变量,连续变量是比较少的。),而协变量里边放的是等级资料,比如病情的严重程度啊,年龄啊(以十年为一个年龄段撒,一年一个的话就看成连续变量吧还是)之类的。在二项回归里边,系统会自动生成哑变量,可是在多项回归里边,就要自己手动设置了。参照上边的解释,不难知道设置好的哑变量要放到因子那个框框里去。
然后点开模型那个对话框,哇,好恐怖的一个对话框,都不知道是干嘛的。好,我们一点点来看。上边我们已经说过交互作用是干嘛的了,那么不难理解,主效应就是变量本身对模型的影响。明确了这一点以后,这个对话框就没有那么难选了。指定模型那一栏有三个模型,主效应指的是只做自变量和因变量的方程,就是最普通的那种。全因子指的是包含了所有主效应和所有因子和因子的交互效应的模型(我也不明白为什么只有全因子,没有全协变量。这个问题真的很难,所以别追问我啦。)第三个是设定步进式。这个是自己手动设置交互项和主效应项的,而且还可以设置这个项是强制输入的还是逐步进入的。这个概念就不用再啰嗦了吧啊?
点击继续,打开统计量对话框,勾选个案处理摘要,伪方,步骤摘要,模型拟合度信息,单元格可能性,分类表,拟合度,估计,似然比检验,继续。打开条件,全勾,继续,打开选项,勾选为分级强制条目和移除项目。打开保存,勾选包含协方差矩阵。确定(总算选完了)。
结果和二项回归差不多,就是多了一个似然比检验,值小于认为变量有意义。然后我们直接看参数估计表。假设我们的因变量有个类,那参数估计表会给出组的截距,变量,变量。我们我们用代表(常量变量变量。。。),那么就有第类情况发生的概率为如果我们以第一类为参考类别的话,我们就不会有关于第一类的参数,那么第一类就是默认的,也就是说为。
有序回归(累积回归):
选择菜单分析——回归——有序,打开主面板。因变量,因子,协变量如何选取就不在重复了。选项对话框默认。打开输出对话框,勾选拟合度统计,摘要统计,参数估计,平行线检验,估计响应概率,实际类别概率,确定,位置对话框和上文的模型对话框类似,也不重复了。确定。
结果里边特有的一个表是平行线检验表。这个表的值小于则认为斜率系数对于不同的类别是不一样的。此外参数估计表得出的参数也有所不同。假设我们的因变量有四个水平,自变量有两个,那么参数估计表会给出三个阈值,(也就是截距),两个自变量的参数,。计算方程时,首先算三个值,,,,(仅有截距不同)有了值以后,()
通过上边的这几个方程就能计算出各自的概率了。
Logistic回归到这里基本就已经结束了。大家一定要记熟公式,弄混可就糟糕了。希望能对你有所帮助呦。
下章内容,回归及非线性回归。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。最详细的基于R语言的Logistic Regression(Logistic回归)源码,包括拟合优度,Recall,Precision... - 推酷
最详细的基于R语言的Logistic Regression(Logistic回归)源码,包括拟合优度,Recall,Precision...
这篇日志也确实是有感而发,我对R不熟悉,但实验需要,所以简单学了一下。发现无论是网上无数的教程,还是书本上的示例,在讲Logistic Regression的时候就是给一个简单的函数及输出结果说明。从来都没有讲清楚几件事情:
1. 怎样用训练数据训练模型,然后在测试数据上进行验证(测试数据和训练数据可能有重合)?
2. 怎样计算预测的效果,也就是计算Recall,Precision,F-measure等值?
3. 怎样计算Nagelkerke拟合优度等评价指标?
发现这些书本和一些写博客的朋友,脑子真是不清楚得可以。去看你的教程,不是光看看简单的函数使用,或者听你讲讲原理,还是希望能尽快并且正确地用起来。从我的经历来看,已有的网上教程都做得太差了。
这里我也不详细介绍过程了,贴上有详细注释的代码,相信大家一看就明白:
rm(list=ls(all=TRUE))#首先删除工作空间中所有对象
training=read.csv(&training.csv&,header=FALSE)
testing=read.csv(&testing.csv&,header=FALSE)#分别导入训练和测试数据
glm.fit=glm(V16~V7,data=training,family=binomial(link=&logit&))#用训练数据生成模型,这里我是用第7列数据预测第16列
n=nrow(training)#训练数据的行数,也就是样本数量
R2&-1-exp((glm.fit$deviance-glm.fit$null.deviance)/n)#计算Cox-Snell拟合优度
cat(&Cox-Snell R2=&,R2,&\n&)
R2&-R2/(1-exp((-glm.fit$null.deviance)/n))#计算Nagelkerke拟合优度,我们在最后输出这个拟合优度值
p=predict(glm.fit,testing)#用模型对测试数据进行预测
p=exp(p)/(1+exp(p))#计算因变量的值
testing$V16_predicted=1*(p&0.5)#给test数据增加一列,也就是对V16的预测,当p&0.5时,预测值为1
true_value=testing[,16]
predict_value=testing[,17]#分别将16和17列取出来
retrieved=sum(predict_value)
precision=sum(true_value & predict_value)/retrieved
recall=sum(predict_value & true_value)/sum(true_value)
F_measure=2*precision*recall/(precision+recall)#计算Recall,Precision和F-measure
summary(glm.fit)
cat(&Nagelkerke R2=&,R2,&\n&)
print(precision)
print(recall)
print(F_measure)
搞不清楚这么简单的东西,为什么很多人都说不清楚。
这里再简单解释一下summary输出结果:
glm(formula = V16 ~ V7, family = binomial(link = &logit&), data = training)
Deviance Residuals:
Coefficients:
Estimate Std. Error z value Pr(&|z|)
(Intercept) -0.744804
-3.590 0.000331 ***
4.226 2.38e-05 ***
Signif. codes:
0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 307.76
degrees of freedom
Residual deviance: 277.85
degrees of freedom
AIC: 281.85
Number of Fisher Scoring iterations: 5
其实大家主要看Coefficient这里就可以了,其中Estimate表示最终预测方程里V7的系数,Pr就是p-value,从这两处看预测效果还可以接受。
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致查看: 4142|回复: 10
在线时间388 小时最后登录注册时间听众数收听数能力0 分体力13094 点威望0 点阅读权限150积分4044相册日志记录帖子主题精华0分享好友
TA的每日心情奋斗 14:06签到天数: 45 天[LV.5]常住居民I自我介绍本人开朗大方,善于与人沟通。
我玩的应用:群组:&
|邮箱已经成功绑定
填写您的邮件地址
通过对于建模思路和方法的讲解,突破建模关键十次课的集训,提升获奖率真正的面授培训,数学中国讲师团封闭密训在学习中获得突破和提高帮助学生在美赛中取得理想成绩。电子书来源:王济川,郭志刚《Logistic回归模型--方法与应用》,高等教育出版社
书籍内容:本书主要介绍了在分析二分类因变量时最常使用的统计分折模型之一logistic回归模型,同时还介绍了如何将logistic回归模型扩展到序次logistic回归模型和多项logit模型。具体例题分析采用SAS和SPSS两种软件建模,并对估计结果进行了详尽解释和对比分析。
" ]7 t. N8 B+ X, o2 e$ q6 E&&~
书籍目录:
9 x+ C9 i" N3 E9 J) P: b& |& H+ f
& & 1、二分类因变量与Iogistic回归模型
& & 2、Logistic回归模型估计
& & 3、Logistic回归模型评价
& & 4、Logistic回归系数解释2 P4 r7 H& m& v+ {0 ?
& & 5、Logistic回归系数的统计推断
& & 6、建立模型
& & 7、Logistic回归诊断: ~* ?( t0 o) r- q/ _" n7 L0 N. x
& & 8、Logistic回归的替代模型及扩展+ h, K7 d# g: Q$ `0 ?: N$ }3 I
电子书说明:这本经典教材的电子书在网上遍布了,但是都是4个文件的原始扫描状态,连目录也没有,这么好的书竟然没人好好打理一下。磨刀不误砍柴工嘛,我做了一点美化,主要改进在于:合并到一起;增添了目录页和封面;增添了细致的书签。& O) c- T. t2 B, w
本帖子中包含更多资源
才可以下载或查看,没有帐号?
踩过的脚印
啦啦啦~~~我是默认签名(*^__^*)
在线时间96 小时最后登录注册时间听众数收听数能力0 分体力237 点威望0 点阅读权限30积分136相册日志记录帖子主题精华0分享好友
, 积分 136, 距离下一级还需 164 积分
升级&&18%当前用户组为 初中生当前积分为 136, 升到下一级还需要 164 点。TA的每日心情无聊 19:31签到天数: 76 天[LV.6]常住居民II
群组:&群组:&群组:&
下载后文件已损坏,怎么回事?
啦啦啦~~~我是默认签名(*^__^*)
在线时间0 小时最后登录注册时间听众数收听数能力0 分体力1 点威望0 点阅读权限10积分1相册日志记录帖子主题精华0分享好友
, 积分 1, 距离下一级还需 4 积分
升级&&20%当前用户组为 学前班当前积分为 1, 升到下一级还需要 4 点。该用户从未签到
谢谢楼主啊
啦啦啦~~~我是默认签名(*^__^*)
在线时间46 小时最后登录注册时间听众数收听数能力0 分体力361 点威望0 点阅读权限50积分667相册日志记录帖子主题精华0分享好友
, 积分 667, 距离下一级还需 333 积分
升级&&16.75%当前用户组为 专科生当前积分为 667, 升到下一级还需要 333 点。TA的每日心情无聊 21:55签到天数: 65 天[LV.6]常住居民II自我介绍爱数学
群组:&群组:&群组:&群组:&
O(∩_∩)O谢谢
啦啦啦~~~我是默认签名(*^__^*)
在线时间46 小时最后登录注册时间听众数收听数能力0 分体力361 点威望0 点阅读权限50积分667相册日志记录帖子主题精华0分享好友
, 积分 667, 距离下一级还需 333 积分
升级&&16.75%当前用户组为 专科生当前积分为 667, 升到下一级还需要 333 点。TA的每日心情无聊 21:55签到天数: 65 天[LV.6]常住居民II自我介绍爱数学
群组:&群组:&群组:&群组:&
通过对于建模思路和方法的讲解,突破建模关键十次课的集训,提升获奖率真正的面授培训,数学中国讲师团封闭密训在学习中获得突破和提高帮助学生在美赛中取得理想成绩。O(∩_∩)O谢谢
啦啦啦~~~我是默认签名(*^__^*)
在线时间55 小时最后登录注册时间听众数收听数能力0 分体力579 点威望0 点阅读权限40积分315相册日志记录帖子主题精华0分享好友
, 积分 315, 距离下一级还需 285 积分
升级&&5%当前用户组为 高中生当前积分为 315, 升到下一级还需要 285 点。TA的每日心情难过 09:12签到天数: 136 天[LV.7]常住居民III自我介绍学生
英文的????????????
啦啦啦~~~我是默认签名(*^__^*)
在线时间0 小时最后登录注册时间听众数收听数能力0 分体力1 点威望0 点阅读权限10积分1相册日志记录帖子主题精华0分享好友
, 积分 1, 距离下一级还需 4 积分
升级&&20%当前用户组为 学前班当前积分为 1, 升到下一级还需要 4 点。该用户从未签到自我介绍
啦啦啦~~~我是默认签名(*^__^*)
在线时间0 小时最后登录注册时间听众数收听数能力0 分体力1 点威望0 点阅读权限10积分1相册日志记录帖子主题精华0分享好友
, 积分 1, 距离下一级还需 4 积分
升级&&20%当前用户组为 学前班当前积分为 1, 升到下一级还需要 4 点。该用户从未签到自我介绍
谢谢楼主分享/ u4 |* B/ o3 }' K- {( c, ~
啦啦啦~~~我是默认签名(*^__^*)
在线时间406 小时最后登录注册时间听众数收听数能力0 分体力5997 点威望0 点阅读权限80积分2267相册日志记录帖子主题精华0分享好友
, 积分 2267, 距离下一级还需 2733 积分
升级&&8.9%当前用户组为 研究生当前积分为 2267, 升到下一级还需要 2733 点。TA的每日心情奋斗 00:01签到天数: 876 天[LV.10]以坛为家III
群组:&群组:&群组:&群组:&群组:&
下载后的是SPSS的书,不是《Logistic回归模型--方法与应用》,什么情况??# m1 L&&?# G8 y3 @
:我下载的也是,什么情况啊 13:44&
啦啦啦~~~我是默认签名(*^__^*)
在线时间0 小时最后登录注册时间听众数收听数能力0 分体力3 点威望0 点阅读权限10积分3相册日志记录帖子主题精华0分享好友
, 积分 3, 距离下一级还需 2 积分
升级&&60%当前用户组为 学前班当前积分为 3, 升到下一级还需要 2 点。该用户从未签到自我介绍一个统计学初学者
通过对于建模思路和方法的讲解,突破建模关键十次课的集训,提升获奖率真正的面授培训,数学中国讲师团封闭密训在学习中获得突破和提高帮助学生在美赛中取得理想成绩。谢谢,想学习下9 \( e% k$ i) }1 F5 i
啦啦啦~~~我是默认签名(*^__^*)
社区QQ达人
使用QQ帐号登录论坛的用户
听说数学模型只有三种,学会了就啥都不愁了?
江湖流传的“函数建模法”可以解决所有建模问题?
照着“三步学习法”学数学模型就可以参透问题的本质?
看到题目没有思路,居然有“审题三部曲”这等神器?
论文读不完,居然有“论文阅读法则”帮我们领会论文真谛?
。。。。。。.没错,这就是 magic 老师课程里秘密教授的数模绝学,5 年精品,绝对原创,仅此一家!
Powered by
& &论坛法律顾问:王兆丰

我要回帖

更多关于 r logistic 回归检验 的文章

 

随机推荐