How to extract residuals from a linear regression model
linear regression
rstats
In this tutorial, we will learn how to extract residual values from a linear regression model in R. Residuals are values that is remaining after adjusting or…
And then we will use the R package broom’s augment() function to extract residuals from the regression model.
First let us load the packages needed.
library(tidyverse)
library(broom)We will using the. classic iris data that is built in with R for building a simple linear regression model.
iris %>% head()
## Sepal.Length Sepal.Width Petal.Length Petal.Width Species
## 1 5.1 3.5 1.4 0.2 setosa
## 2 4.9 3.0 1.4 0.2 setosa
## 3 4.7 3.2 1.3 0.2 setosa
## 4 4.6 3.1 1.5 0.2 setosa
## 5 5.0 3.6 1.4 0.2 setosa
## 6 5.4 3.9 1.7 0.4 setosaWith lm() function, here we build a simple linear regression model between two numerical variables from iris dataset. Note that since we provide iris data set as data argument, we can refer the variables in the linear model without any quotes.
lm_fit |t|)
## (Intercept) 4.30660 0.07839 54.94
## 1 5.1 1.4 4.88 0.221 0.0186 0.408 0.00285 0.548
## 2 4.9 1.4 4.88 0.0209 0.0186 0.408 0.0000255 0.0518
## 3 4.7 1.3 4.84 -0.138 0.0197 0.408 0.00118 -0.343
## 4 4.6 1.5 4.92 -0.320 0.0176 0.408 0.00565 -0.793
## 5 5 1.4 4.88 0.121 0.0186 0.408 0.000854 0.300
## 6 5.4 1.7 5.00 0.398 0.0158 0.407 0.00780 0.986
## 7 4.6 1.4 4.88 -0.279 0.0186 0.408 0.00455 -0.692
## 8 5 1.5 4.92 0.0800 0.0176 0.408 0.000353 0.198
## 9 4.4 1.4 4.88 -0.479 0.0186 0.407 0.0134 -1.19
## 10 4.9 1.5 4.92 -0.0200 0.0176 0.408 0.0000220 -0.0495
## # … with 140 more rowsAnd we can extract the residuals using pull() function as shown below.
broom::augment(lm_fit)
pull(.resid)
## [1] 0.22090540 0.02090540 -0.13820238 -0.31998683 0.12090540 0.39822871
## [7] -0.27909460 0.08001317 -0.47909460 -0.01998683 0.48001317 -0.16087906
## [13] -0.07909460 -0.45641792 1.00268985 0.78001317 0.56179762 0.22090540
## [19] 0.69822871 0.18001317 0.39822871 0.18001317 -0.11552569 0.09822871
## [25] -0.28355574 0.03912094 0.03912094 0.28001317 0.32090540 -0.26087906
## [31] -0.16087906 0.48001317 0.28001317 0.62090540 -0.01998683 0.20268985
## [37] 0.66179762 0.02090540 -0.43820238 0.18001317 0.16179762 -0.33820238
## [43] -0.43820238 0.03912094 0.01644426 -0.07909460 0.13912094 -0.27909460
## [49] 0.38001317 0.12090540 0.77146188 0.25324634 0.58967743 -0.44229252
## [55] 0.31235411 -0.44675366 0.07146188 -0.75604693 0.41235411 -0.70140030
##
##
##