Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Using paste when naming a list

Tags:

list

r

paste

Naming a list like this works fine:

list("mtcars" = mtcars)

But when I try to use paste, I get an error:

list(paste("mtcars") = mtcars)

Error: unexpected '=' in "list(paste("mtcars") ="

How can I use paste when naming a list?

like image 500
luciano Avatar asked Sep 25 '22 21:09

luciano


2 Answers

You can initialise the list with myList <- list() and then add named items with:

myList[[paste("mtcars")]] <- mtcars
like image 115
CJB Avatar answered Nov 15 '22 06:11

CJB


We can use mget

myList <- mget("mtcars")

It will get the values in list with the strings as the names.

str(myList)
#List of 1
# $ mtcars:'data.frame': 32 obs. of  11 variables:
#  ..$ mpg : num [1:32] 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
#  ..$ cyl : num [1:32] 6 6 4 6 8 6 8 4 4 6 ...
#  ..$ disp: num [1:32] 160 160 108 258 360 ...
#  ..$ hp  : num [1:32] 110 110 93 110 175 105 245 62 95 123 ...
#  ..$ drat: num [1:32] 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
#  ..$ wt  : num [1:32] 2.62 2.88 2.32 3.21 3.44 ...
#  ..$ qsec: num [1:32] 16.5 17 18.6 19.4 17 ...
#  ..$ vs  : num [1:32] 0 0 1 1 0 1 0 1 1 1 ...
#  ..$ am  : num [1:32] 1 1 1 0 0 0 0 0 0 0 ...
#  ..$ gear: num [1:32] 4 4 4 3 3 3 3 4 4 4 ...
#  ..$ carb: num [1:32] 4 4 1 1 2 1 4 2 2 4 ...
like image 26
akrun Avatar answered Nov 15 '22 06:11

akrun