pp <- read_csv("data/paris-paintings.csv", na = c("n/a", "", "NA"))
linear_reg()
## Linear Regression Model Specification (regression)## ## Computational engine: lm
linear_reg() %>% set_engine("lm") # lm: linear model
## Linear Regression Model Specification (regression)## ## Computational engine: lm
... using formula syntax
linear_reg() %>% set_engine("lm") %>% fit(Height_in ~ Width_in, data = pp)
## parsnip model object## ## ## Call:## stats::lm(formula = Height_in ~ Width_in, data = data)## ## Coefficients:## (Intercept) Width_in ## 3.6214 0.7808
## parsnip model object## ## ## Call:## stats::lm(formula = Height_in ~ Width_in, data = data)## ## Coefficients:## (Intercept) Width_in ## 3.6214 0.7808
ˆheighti=3.6214+0.7808×widthi
linear_reg() %>% set_engine("lm") %>% fit(Height_in ~ Width_in, data = pp) %>% tidy()
## # A tibble: 2 × 5## term estimate std.error statistic p.value## <chr> <dbl> <dbl> <dbl> <dbl>## 1 (Intercept) 3.62 0.254 14.3 8.82e-45## 2 Width_in 0.781 0.00950 82.1 0
ˆheighti=3.62+0.781×widthi
ˆheighti=3.62+0.781×widthi
ˆheighti=3.62+0.781×widthi
Remember this when interpreting model coefficients
Source: XKCD, Cell phones
^yi=β0+β1 xi
^yi=β0+β1 xi
^yi=β0+β1 xi
^yi=b0+b1 xi
¯y=b0+b1¯x → b0=¯y−b1¯x
¯y=b0+b1¯x → b0=¯y−b1¯x
¯y=b0+b1¯x → b0=¯y−b1¯x
¯y=b0+b1¯x → b0=¯y−b1¯x
## # A tibble: 3,393 × 3## name Height_in landsALL## <chr> <dbl> <dbl>## 1 L1764-2 37 0## 2 L1764-3 18 0## 3 L1764-4 13 1## 4 L1764-5a 14 1## 5 L1764-5b 14 1## 6 L1764-6 7 0## 7 L1764-7a 6 0## 8 L1764-7b 6 0## 9 L1764-8 15 0## 10 L1764-9a 9 0## 11 L1764-9b 9 0## 12 L1764-10a 16 1## 13 L1764-10b 16 1## 14 L1764-10c 16 1## 15 L1764-11 20 0## 16 L1764-12a 14 1## 17 L1764-12b 14 1## 18 L1764-13a 15 1## 19 L1764-13b 15 1## 20 L1764-14 37 0## # … with 3,373 more rows
landsALL = 0
: No landscape featureslandsALL = 1
: Some landscape featureslinear_reg() %>% set_engine("lm") %>% fit(Height_in ~ factor(landsALL), data = pp) %>% tidy()
## # A tibble: 2 × 5## term estimate std.error statistic p.value## <chr> <dbl> <dbl> <dbl> <dbl>## 1 (Intercept) 22.7 0.328 69.1 0 ## 2 factor(landsALL)1 -5.65 0.532 -10.6 7.97e-26
ˆHeightin=22.7−5.645 landsALL
Slope: Paintings with landscape features are expected, on average, to be 5.645 inches shorter than paintings that without landscape features
landsALL = 0
) to the other level (landsALL = 1
)Intercept: Paintings that don't have landscape features are expected, on average, to be 22.7 inches tall
linear_reg() %>% set_engine("lm") %>% fit(Height_in ~ school_pntg, data = pp) %>% tidy()
## # A tibble: 7 × 5## term estimate std.error statistic p.value## <chr> <dbl> <dbl> <dbl> <dbl>## 1 (Intercept) 14.0 10.0 1.40 0.162 ## 2 school_pntgD/FL 2.33 10.0 0.232 0.816 ## 3 school_pntgF 10.2 10.0 1.02 0.309 ## 4 school_pntgG 1.65 11.9 0.139 0.889 ## 5 school_pntgI 10.3 10.0 1.02 0.306 ## 6 school_pntgS 30.4 11.4 2.68 0.00744## 7 school_pntgX 2.87 10.3 0.279 0.780
## # A tibble: 7 × 5## term estimate std.error statistic p.value## <chr> <dbl> <dbl> <dbl> <dbl>## 1 (Intercept) 14.0 10.0 1.40 0.162 ## 2 school_pntgD/FL 2.33 10.0 0.232 0.816 ## 3 school_pntgF 10.2 10.0 1.02 0.309 ## 4 school_pntgG 1.65 11.9 0.139 0.889 ## 5 school_pntgI 10.3 10.0 1.02 0.306 ## 6 school_pntgS 30.4 11.4 2.68 0.00744## 7 school_pntgX 2.87 10.3 0.279 0.780
school_pntg | D_FL | F | G | I | S | X |
---|---|---|---|---|---|---|
A | 0 | 0 | 0 | 0 | 0 | 0 |
D/FL | 1 | 0 | 0 | 0 | 0 | 0 |
F | 0 | 1 | 0 | 0 | 0 | 0 |
G | 0 | 0 | 1 | 0 | 0 | 0 |
I | 0 | 0 | 0 | 1 | 0 | 0 |
S | 0 | 0 | 0 | 0 | 1 | 0 |
X | 0 | 0 | 0 | 0 | 0 | 1 |
## # A tibble: 3,393 × 3## name Height_in school_pntg## <chr> <dbl> <chr> ## 1 L1764-2 37 F ## 2 L1764-3 18 I ## 3 L1764-4 13 D/FL ## 4 L1764-5a 14 F ## 5 L1764-5b 14 F ## 6 L1764-6 7 I ## 7 L1764-7a 6 F ## 8 L1764-7b 6 F ## 9 L1764-8 15 I ## 10 L1764-9a 9 D/FL ## 11 L1764-9b 9 D/FL ## 12 L1764-10a 16 X ## 13 L1764-10b 16 X ## 14 L1764-10c 16 X ## 15 L1764-11 20 D/FL ## 16 L1764-12a 14 D/FL ## 17 L1764-12b 14 D/FL ## 18 L1764-13a 15 D/FL ## 19 L1764-13b 15 D/FL ## 20 L1764-14 37 F ## # … with 3,373 more rows
## # A tibble: 7 × 5## term estimate std.error statistic p.value## <chr> <dbl> <dbl> <dbl> <dbl>## 1 (Intercept) 14.0 10.0 1.40 0.162 ## 2 school_pntgD/FL 2.33 10.0 0.232 0.816 ## 3 school_pntgF 10.2 10.0 1.02 0.309 ## 4 school_pntgG 1.65 11.9 0.139 0.889 ## 5 school_pntgI 10.3 10.0 1.02 0.306 ## 6 school_pntgS 30.4 11.4 2.68 0.00744## 7 school_pntgX 2.87 10.3 0.279 0.780
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |