Answers:
常规伽马GLM包含形状参数为常数的假设,就像法线模型假定常数方差一样。
在GLM用语色散参数,在通常是恒定的。瓦尔(Ý 我)= φ V (μ 我)
更一般而言,您有,但这无济于事。
也许可以使用加权Gamma GLM来合并指定形状参数的这种效果,但是我还没有研究这种可能性(如果可行,这可能是最简单的方法,但是我根本没有确保会)。
如果您有双GLM,则可以将该参数作为协变量的函数进行估算 ...,如果双glm软件允许您在方差项中指定偏移量,则可以执行此操作。看起来dglm
包中的函数可以dglm
让您指定偏移量。我不知道它是否会让您指定像(说)这样的方差模型~ offset(<something>) + 0
。
另一种选择是直接使可能性最大化。
> y <- rgamma(100,10,.1)
> summary(glm(y~1,family=Gamma))
Call:
glm(formula = y ~ 1, family = Gamma)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.93768 -0.25371 -0.05188 0.16078 0.81347
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.0103660 0.0003486 29.74 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for Gamma family taken to be 0.1130783)
Null deviance: 11.223 on 99 degrees of freedom
Residual deviance: 11.223 on 99 degrees of freedom
AIC: 973.56
Number of Fisher Scoring iterations: 5
该行显示:
(Dispersion parameter for Gamma family taken to be 0.1130783)
是您想要的那个。
该与Gamma的形状参数有关。
我使用了Balajari (2013)所述的MASS软件包的gamma.shape函数,以便随后估算形状参数,然后在GLM中调整系数估算和预测。我建议您阅读该讲座,因为我认为这对于在GLM中使用伽玛分布非常清晰有趣。
glmGamma <- glm(response ~ x1, family = Gamma(link = "identity")
library(MASS)
myshape <- gamma.shape(glmGamma)
gampred <- predict(glmGamma , type = "response", se = T, dispersion = 1/myshape$alpha)
summary(glmGamma, dispersion = 1/myshape$alpha)