Simple Linear Regression

Simple Linear Regression is a statistical method that allows us to summarize and study relationships between two different variables

Simple Linear Regression Formula

\(Y = \beta_0 + \beta_1 x + \epsilon\)

  • \(Y\) is the dependent variable
  • \(X\) is the independent variable
  • \(\beta_0\) is the intercept
  • \(\beta_1\) is the slope
  • \(\epsilon\) is the error

MTCARS

We will be using the mtcars dataset to look at the relationship between a car’s weight and its miles per gallon.

Scatter Plot of mpg vs wt

Fitting the Linear Model

## 
## Call:
## lm(formula = mpg ~ wt, data = mtcars)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.5432 -2.3647 -0.1252  1.4096  6.8727 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  37.2851     1.8776  19.858  < 2e-16 ***
## wt           -5.3445     0.5591  -9.559 1.29e-10 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 3.046 on 30 degrees of freedom
## Multiple R-squared:  0.7528, Adjusted R-squared:  0.7446 
## F-statistic: 91.38 on 1 and 30 DF,  p-value: 1.294e-10

Regression Line Plot

## `geom_smooth()` using formula = 'y ~ x'

Regression Equation for Our Example

\[ {mpg} = \beta_0 + \beta_1 wt \] Using the coefficients from our model, the equation becomes: \[ {mpg} = 37.285 - 5.344 \times wt \]

Interactive Plot

Code for Previous Slide

plot_ly(data = mtcars, x = ~wt, y = ~mpg, type = "scatter",
        mode = "markers") %>%
  add_lines(x = ~wt, y = fitted(mod)) %>%
  layout(xaxis = list(title = "Weight in 1000s"),
         yaxis = list(title = "MPG"))