Multilevel Modeling Using R 第七章

从这一章开始,我们把目光聚集到广义线性模型的学习中

逻辑回归

这个内容之前我也有过简单的介绍,那么逻辑回归是广义线性模型的一种
我们知道,一般的相信模型Y = βX + B,那么广义线性模型的广义体现在将Y做了一些函数变化,及f(Y) = β' X + B' ,使得该模型运用更加广泛

对于一元的逻辑回归来说:

一元逻辑回归

y对应的输出结果是分类变量,在计算机中可以用布尔值(0和1)来代替,p(y = 1) 代表分类为1的概率为多少
这里的β1代表斜率,β0代表截距
这里只做简单的介绍,详细的概念可以参考之前的推送
我们重点讲下如何用R来实现

coronary.logistic<-glm(group~time, family = binomial) #family = binomial表示我们的y是个二分类变量
coronary.logistic

我们建立的是group与time的一元逻辑回归关系,其中β1 = -0.016534 ,β0 = 13.488949以及它们的回归系数显著性

顺序变量的逻辑回归(累积)

关于顺序变量的逻辑回归的构造如下:



以一个 j 作为阈值筛选,我们接着看:



其中p(Y=0)+p(Y=1)+p(Y =2)+p(Y=3)+p(Y=4 ) = 1

那么p(Y<=j)即为当Y <= j的概率值之和
我们注意这个模型仅有一个斜率,每个方程对应不同的截距,即该类型模型仅有一个斜率,若干个截距
利用R:

cooking.cum.logit<-polr(cook~treatment, method = c("logistic"))

#假设检验
1- pchisq(deviance(cooking.cum.logit), df.residual(cooking.cum. logit)) 
cooking.cum.logit 上

cooking.cum.logit 下

其中β1 = -0.7963096;β0 的值如Intercepts所示

顺序变量逻辑回归即按分类序号0,1,2,3,4顺序计算模型

多分类的逻辑回归

表达式

其中 i,j 为不同的分类变量
其中不同分类变量截距和斜率均不同。可以看做两个分类变量相互比较,谁的概率大就分为哪一类

我们具体看一个例子,以分三类为例:

politics. multinom<-multinom(viewpoint~age, data = politics)
 summary(politics.multinom) 
politics. multinom 上

politics. multinom 下

这个数据中viewpoint的变量有三类:C (conservative), M (moderate), or L ( liberal)
那么我们想计算L和M的分类情况:

推测该例子中,R把C(conservative)作为参照来比较,那么我们可用下述式子转换



由于R结果中只有L和M,这分别表示ln(p(Y=L)/p(Y=C))和ln(p(Y=M)/p(Y=C))的值

其他广义线性模型

1.泊松回归

很简单,在泊松分布的基础上对响应变量取对数值


babies.poisson<-glm(babies~sei, data = ses_babies, family = c("poisson"))
babies.poisson 上

babies.poisson 下

结果相信读者都已经会看了,这里不在过多赘述

2. Overdispersed Count Data

泊松回归模型的基本特征是均值和方差相等(可复习下泊松分布),若不等,则会造成误差;我们利用quasi-Poisson 模型来进行计算:

babies.quasipoisson<-glm(babies~sei, data = ses_babies, family = c("quasipoisson"))
babies.quasipoisson 上

babies.quasipoisson 下

结果与之前的模型类似,这里不再过多赘述

你可能感兴趣的:(Multilevel Modeling Using R 第七章)