Call:
stats::lm(formula = Sale_Price ~ Gr_Liv_Area, data = data)
Coefficients:
(Intercept) Gr_Liv_Area
4.8552133 0.0002437
tidymodels3
Aufgabe
Berechnen Sie ein lineares Modell mit tidymodels und zwar anhand des ames
Datensatzes.
Modellgleichung: Sale_Price ~ Gr_Liv_Area, data = ames
.
Berechnen Sie ein multiplikatives (exponenzielles) Modell.
Rücktransformieren Sie die Log-Werte in “Roh-Dollar”.
Lösung
Multiplikatives Modell:
Nicht vergessen: AV-Transformation in beiden Samples!
Datensatz aufteilen:
Modell definieren:
Modell fitten:
Modellgüte im Train-Sample:
Modellgüte im Train-Sample:
Call:
stats::lm(formula = Sale_Price ~ Gr_Liv_Area, data = data)
Residuals:
Min 1Q Median 3Q Max
-1.02587 -0.06577 0.01342 0.07202 0.39231
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.855e+00 7.355e-03 660.12 <2e-16 ***
Gr_Liv_Area 2.437e-04 4.648e-06 52.43 <2e-16 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 0.1271 on 2928 degrees of freedom
Multiple R-squared: 0.4842, Adjusted R-squared: 0.484
F-statistic: 2749 on 1 and 2928 DF, p-value: < 2.2e-16
R-Quadrat via easystats:
# R2 for Linear Regression
R2: 0.484
adj. R2: 0.484
# A tibble: 2 × 5
term estimate std.error statistic p.value
<chr> <dbl> <dbl> <dbl> <dbl>
1 (Intercept) 4.86 0.00736 660. 0
2 Gr_Liv_Area 0.000244 0.00000465 52.4 0
Vorhersagen im Test-Sample:
# A tibble: 6 × 1
.pred
<dbl>
1 5.07
2 5.18
3 5.31
4 5.11
5 5.18
6 5.10
preds
ist ein Tibble, also müssen wir noch die Spalte .pred.
herausziehen, z.B. mit pluck(preds, ".pred")
:
# A tibble: 6 × 4
Sale_Price Gr_Liv_Area preds .pred
<dbl> <int> <dbl> <dbl>
1 5.02 896 5.07 5.07
2 5.24 1329 5.18 5.18
3 5.60 1856 5.31 5.31
4 5.15 1056 5.11 5.11
5 5.26 1337 5.18 5.18
6 4.98 987 5.10 5.10
Oder mit unnest
:
# A tibble: 6 × 3
Sale_Price Gr_Liv_Area .pred
<dbl> <int> <dbl>
1 5.02 896 5.07
2 5.24 1329 5.18
3 5.60 1856 5.31
4 5.15 1056 5.11
5 5.26 1337 5.18
6 4.98 987 5.10
Oder wir binden einfach die Spalte an den Tibble:
# A tibble: 6 × 3
Sale_Price Gr_Liv_Area .pred
<dbl> <int> <dbl>
1 5.02 896 5.07
2 5.24 1329 5.18
3 5.60 1856 5.31
4 5.15 1056 5.11
5 5.26 1337 5.18
6 4.98 987 5.10
Modellgüte im Test-Sample:
# A tibble: 1 × 3
.metric .estimator .estimate
<chr> <chr> <dbl>
1 rsq standard 0.517
Zur Interpretation von Log10-Werten
[1] 5e+05
[1] 0
Rücktransformation (ohne Bias-Korrektur):
Categories:
- ds1
- tidymodels
- prediction
- yacsda
- statlearning
- lm
- num