R语言广义线性模型(GLMs)算法和零膨胀模型分析

时间:2022-07-27
本文章向大家介绍R语言广义线性模型(GLMs)算法和零膨胀模型分析,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

原文链接:http://tecdat.cn/?p=14887

广义线性模型(GLM) 是通过连接函数,把自变量线性组合和因变量的概率分布连起来,该概率分布可以是高斯分布、二项分布、多项式分布、泊松分布、伽马分布、指数分布。连接函数有:

  • 平方根连接(用于泊松模型)

考虑一些均值μ和方差σ2的随机变量Y。利用泰勒展开式

假使

​,考虑平方根变换g(y)= sqrt {y} g(y)= y,则第二个等式变为

因此,通过平方根变换,我们具有方差稳定性,可以将其解释为一定的同调性。

  • 伯努利模型的对数函数

假设变量是泊松变量,

先前的模型看起来像是伯努利回归分析,其中H作为链接函数, mathbb {P}

因此,现在假设代替观察N,我们观察到Y = 1(N> 0)。在那种情况下,运行带有对数链接函数的伯努利回归,首先与对原始数据运行泊松回归,然后在我们的二进制变量零和非零上使用。让我们先生成一些模拟数据,比较从标准逻辑回归得到的eλx和px

regPois = glm(Y~.,data=base,family=poisson(link="log"))
regBinom = glm((Y==0)~.,data=base,family=binomial(link="probit"))

如果px 是从Bernoulli回归中获得的,并且具有连接功能,该怎么办?

plot(prob,1-exp(-lambda),xlim=0:1,ylim=0:1)
abline(a=0,b=1,lty=2,col="red")

拟合很好,现在,如果我们对婚姻出轨数据集,由雷·费尔,在1978年出版的 期刊政治经济学 (含563个观察,九个变量)进行建模:

prob = predict(regBinom, type="response")
plot(prob,exp(-lambda),xlim=0:1,ylim=0:1)
abline(a=0,b=1,lty=2,col="red")

在这种情况下,这两种模型结果是非常不同的。第二个模型也是

plot(prob,1-exp(-lambda),xlim=0:1,ylim=0:1)
abline(a=0,b=1,lty=2,col="red")

我们如何解释呢?是因为泊松模型不好吗?我们在这里运行零膨胀模型进行比较,

summary(regZIP)
 
Count model coefficients (poisson with log link):
             Estimate Std. Error z value Pr(>|z|)    
(Intercept) -0.002274   0.048413  -0.047    0.963    
X1           1.019814   0.026186  38.945   <2e-16 ***
X2           1.004814   0.024172  41.570   <2e-16 *** 
Zero-inflation model coefficients (binomial with logit link): 
            Estimate Std. Error z value Pr(>|z|)  
(Intercept) -4.90190    2.07846  -2.358   0.0184 *
X1          -2.00227    0.86897  -2.304   0.0212 *
X2          -0.01545    0.96121  -0.016   0.9872  
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

由于零的膨胀,我们在这里拒绝了泊松分布的假设,可以使用对数连接来检查泊松分布是否是一个好的模型。


参考文献

1.用SPSS估计HLM层次线性模型模型

2.R语言线性判别分析(LDA),二次判别分析(QDA)和正则判别分析(RDA)

3.基于R语言的lmer混合线性回归模型

4.R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

5.在r语言中使用GAM(广义相加模型)进行电力负荷时间序列分析

6.使用SAS,Stata,HLM,R,SPSS和Mplus的分层线性模型HLM

7.R语言中的岭回归、套索回归、主成分回归:线性模型选择和正则化

8.R语言用线性回归模型预测空气质量臭氧数据

9.R语言分层线性模型案例