你如何从R中的Betareg模型中找到R平方和Beta值?

时间:2017-08-06 15:01:43

标签: r regression

我有一个beta回归模型(使用包'betareg')和图,但对于报告结果,我需要R平方和Beta。我只知道lm.beta funtion从lm方程中找到Beta,而摘要(lm(DV~IV, data=mydata)$r.squared用于从lm方程中找到r平方。如何找到β回归模型的这些值?

1 个答案:

答案 0 :(得分:2)

betareg的对象有很多提取函数,请参阅vignette("betareg", package = "betareg")中的表1.

作为一个简单的例子,考虑ReadingSkills案例研究(第5.1节):

library("betareg")
data("ReadingSkills", package = "betareg")
m <- betareg(accuracy ~ iq * dyslexia | iq + dyslexia, data = ReadingSkills)

通常的摘要包含您要查找的信息:

summary(m)
## Call:
## betareg(formula = accuracy ~ iq * dyslexia | iq + dyslexia, data = ReadingSkills)
## 
## Standardized weighted residuals 2:
##     Min      1Q  Median      3Q     Max 
## -2.3900 -0.6416  0.1572  0.8524  1.6446 
## 
## Coefficients (mean model with logit link):
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)   1.1232     0.1428   7.864 3.73e-15 ***
## iq            0.4864     0.1331   3.653 0.000259 ***
## dyslexia     -0.7416     0.1428  -5.195 2.04e-07 ***
## iq:dyslexia  -0.5813     0.1327  -4.381 1.18e-05 ***
## 
## Phi coefficients (precision model with log link):
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)   3.3044     0.2227  14.835  < 2e-16 ***
## iq            1.2291     0.2672   4.600 4.23e-06 ***
## dyslexia      1.7466     0.2623   6.658 2.77e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 
## 
## Type of estimator: ML (maximum likelihood)
## Log-likelihood:  65.9 on 7 Df
## Pseudo R-squared: 0.5756
## Number of iterations: 25 (BFGS) + 1 (Fisher scoring) 

要提取特定部分,例如Pseudo R-squared,您可以访问summary()的元素:

summary(m)$pseudo.r.squared
## 0.5756258

或者有专门的方法:

coef(m)
##       (Intercept)                iq          dyslexia       iq:dyslexia 
##         1.1232250         0.4863696        -0.7416450        -0.5812569 
## (phi)_(Intercept)          (phi)_iq    (phi)_dyslexia 
##         3.3044312         1.2290731         1.7465642 
coef(m, model = "mean")
## (Intercept)          iq    dyslexia iq:dyslexia 
##   1.1232250   0.4863696  -0.7416450  -0.5812569 
coef(m, model = "precision")
## (Intercept)          iq    dyslexia 
##    3.304431    1.229073    1.746564