2017-08-06 1 views
0

Ich habe ein Beta-Regressionsmodell (mit Paket 'betareg') und Diagramme, aber für die Berichterstattung Ergebnisse werde ich R-Quadrat und Beta benötigen. Ich kenne nur die lm.beta funtion zum Finden von Beta aus einer lm-Gleichung und die Zusammenfassung (lm(DV~IV, data=mydata)) $r.squared zum Finden von r-Quadrat aus lm-Gleichungen. Wie finde ich diese Werte für ein Beta-Regressionsmodell?Wie finden Sie R-Quadrat- und Beta-Werte von einem Betareg-Modell in R?

+0

Definieren Sie Rsquared. Tipp: Für etwas anderes als lineare Regression ist es nicht so einfach. –

Antwort

2

Es gibt eine breite Palette von Extraktorfunktionen für Objekte der Klasse betareg, siehe Tabelle 1 in vignette("betareg", package = "betareg").

Als einfaches Beispiel betrachten die ReadingSkills Fallstudie (Abschnitt 5.1):

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

Die übliche Zusammenfassung hat die Informationen, die Sie für aussehen:

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) 

zu extrahieren bestimmte Teile wie die Pseudo R-Quadrat Sie können auf die Elemente der summary():

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

Oder gibt es dedizierte Methoden:

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 
Verwandte Themen