18.7 Regressionsanalyse in R

Transcrição

18.7 Regressionsanalyse in R
18.7. REGRESSIONSANALYSE IN R
18.7
427
Regressionsanalyse in R
Wir schauen uns zunächst das Beispiel 128 auf Seite 405 an. Die Daten sind
in Tabelle 18.2 auf Seite 405 zu finden.
Wir erzeugen eine Variable Alter und eine Variable Preis:
> Alter<-c(2,3,4,5,6,7)
> Preis<-c(21800,21200,17900,16900,13500,12900)
In R kann man eine lineare Regression mit der Funktion lsfit durchführen.
Wir rufen diese folgendermaßen auf:
lsfit(x,y,intercept=TRUE)
Dabei ist x die erklände Variable und y die abhängige Variable. Ist das Argument intercept gleich TRUE, so schätzen wir
y = β0 + β1 x
Das Ergebnis von lsfit ist eine Liste, deren erste Komponente ein Vektor
ist, der β̂0 und β̂1 enthält.
> lsfit(Alter,Preis)[[1]]
Intercept
X
26186.67 -1960.00
Die Funktion lsfit liefert nicht den Wert von R2 . Hierzu müssen wir eine
andere Funktion verwenden. Man kann aber mit der Funktion lsfit folgendermaßen problemlos die Regressionsgerade zum Streudiagramm hinzufügen.
> plot(Alter,Preis)
> abline(lsfit(Alter,Preis))
Schauen wir uns die Funktion lm an. Diese wird folgendermaßen aufgerufen:
lm(y~x)
Informationen erhalten wir, indem wir die Funktion summary auf das Ergebnis von lm anwenden.
KAPITEL 18. DAS LINEARE MODELL
428
> summary(lm(Preis~Alter))
Call: lm(formula = Preis ~ Alter)
Residuals:
1
2
3
-466.7 893.3 -446.7
4
5
513.3 -926.7
6
433.3
Coefficients:
Estimate Std. Error t value
(Intercept) 26186.7
914.2
28.64
Alter
-1960.0
189.9 -10.32
--Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01
Pr(>|t|)
8.84e-06 ***
0.000498 ***
‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 794.6 on 4 degrees of freedom
Multiple R-Squared: 0.9638,
Adjusted R-squared: 0.9547
F-statistic: 106.5 on 1 and 4 DF,
p-value: 0.0004976
'
ar(β̂0 )
Hier finden wir die Schätzer von β̂0 und β̂1 unter Coefficients und V$
'
und V$
ar(β̂1 ) unter Std. Error. Der Wert detr Teststatistik t steht unter
t value. Den Wert von R2 finden wir unter Multiple R-Squared.