2013-03-02 10 views
28

Hier ist eine Übung von Einführungs Statistik mit R berechnen:Wie der 95% Konfidenzintervall für die Steigung in einem linearen Regressionsmodell in R

Mit dem RMR-Datensatz, Plot metabolischer Rate im Vergleich zu Körpergewicht. Passen Sie ein lineares Regressionsmodell an die Relation an. Was ist nach dem angepassten Modell die vorhergesagte Stoffwechselrate bei einem Körpergewicht von 70 kg? Geben Sie ein 95% -Konfidenzintervall für die Steigung der Linie an.

rmr-Datensatz befindet sich im 'ISwR' Paket. Es sieht wie folgt aus:

> rmr 
    body.weight metabolic.rate 
1   49.9   1079 
2   50.8   1146 
3   51.8   1115 
4   52.6   1161 
5   57.6   1325 
6   61.4   1351 
7   62.3   1402 
8   64.9   1365 
9   43.1   870 
10  48.1   1372 
11  52.2   1132 
12  53.5   1172 
13  55.0   1034 
14  55.0   1155 
15  56.0   1392 
16  57.8   1090 
17  59.0   982 
18  59.0   1178 
19  59.2   1342 
20  59.5   1027 
21  60.0   1316 
22  62.1   1574 
23  64.9   1526 
24  66.0   1268 
25  66.4   1205 
26  72.8   1382 
27  74.8   1273 
28  77.1   1439 
29  82.0   1536 
30  82.0   1151 
31  83.4   1248 
32  86.2   1466 
33  88.6   1323 
34  89.3   1300 
35  91.6   1519 
36  99.8   1639 
37  103.0   1382 
38  104.5   1414 
39  107.7   1473 
40  110.2   2074 
41  122.0   1777 
42  123.1   1640 
43  125.2   1630 
44  143.3   1708 

Ich weiß, wie die vorhergesagte y bei einem gegebenen x zu berechnen, aber wie kann ich das Konfidenzintervall für die Steigung berechnen?

+5

haben Sie versucht, 'confint'? – Arun

Antwort

53

Lassen sich das Modell passen:

> library(ISwR) 
> fit <- lm(metabolic.rate ~ body.weight, rmr) 
> summary(fit) 

Call: 
lm(formula = metabolic.rate ~ body.weight, data = rmr) 

Residuals: 
    Min  1Q Median  3Q  Max 
-245.74 -113.99 -32.05 104.96 484.81 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 811.2267 76.9755 10.539 2.29e-13 *** 
body.weight 7.0595  0.9776 7.221 7.03e-09 *** 
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 157.9 on 42 degrees of freedom 
Multiple R-squared: 0.5539, Adjusted R-squared: 0.5433 
F-statistic: 52.15 on 1 and 42 DF, p-value: 7.025e-09 

der 95% Konfidenzintervall für die Steigung ist der geschätzte Koeffizient (7,0595) ± Standardfehler zwei (0,9776).

Dies kann confint berechnet werden:

> confint(fit, 'body.weight', level=0.95) 
       2.5 % 97.5 % 
body.weight 5.086656 9.0324 
+12

Dies entspricht folgendem: 'coef = Zusammenfassung (Anpassung) $ Koeffizienten [2,1] Fehler = Zusammenfassung (Anpassung) $ Koeffizienten [2,2] coef + c (-1,1) * err * qt (0.975, 42) [1] 5.086656 9.032400': es ist der geschätzte Koeffizient + - qt (1-alpha/2, df) Standardfehler – ds440

+1

Danke, NPE! Der so geschätzte Koeffizient +/- zwei Standardfehler ist eine Näherung und die letztere Methode bietet eine genaue Möglichkeit, das Konfidenzintervall zu berechnen, richtig? –

+5

Ja, die zwei SE ist ein guter Ballpark: Wenn die linearen Modellannahmen richtig sind, dann folgt es einer T-Verteilung, so dass sich die Stichprobengröße auf ~ 1,96 erhöht, für kleinere Stichproben höher. – ds440

Verwandte Themen