How to create a list of regression models for predefined vectors in R?



To create a list of regression models for predefined vectors, we can create a blank list and then use the for loop to create the list of regression models. For example, if we have two vectors say x and y, and we want to create a list of regression model between x and y then we create a blank list using list() and perform for loop a particular number of times as shown in the below examples.

Example1

 Live Demo

x<-rnorm(20) y<-rnorm(20) List_1=list() for (i in 1:10) List_1[[i]] = lm(y~x) List_1

Output

[[1]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[2]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[3]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[4]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[5]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[6]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[7]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[8]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[9]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600 [[10]] Call: lm(formula = y ~ x) Coefficients: (Intercept) x    -0.1294 0.2600

Example 2

 Live Demo

x1<-rpois(2000,1) x2<-rpois(2000,2) x3<-rpois(2000,2) y1<-rpois(2000,5) List_2=list() for (i in 1:10) List_2[[i]] = lm(y1~x1+x2+x3) List_2

Output

[[1]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3    5.065561 -0.039094 0.006488 -0.035636 [[2]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3    5.065561 -0.039094 0.006488 -0.035636 [[3]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3    5.065561 -0.039094 0.006488 -0.035636 [[4]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636 [[5]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3    5.065561 -0.039094 0.006488 -0.035636 [[6]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636 [[7]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636 [[8]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636 [[9]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636 [[10]] Call: lm(formula = y1 ~ x1 + x2 + x3) Coefficients: (Intercept) x1 x2 x3  5.065561 -0.039094 0.006488 -0.035636
Updated on: 2021-03-06T11:23:20+05:30

2K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements