generate variable names (something like get())
How can i substitute this code with a loop? m1 <- ggplot(foo) m2 <- ggplot(foo) ... m9 <- ggplot(foo) I guess i need something like get() to replace magic(), But get did not work here. for (i in 1:9){ magic(i) <- ggplot(foo) } Use a list: out <- list() for (i in 1:9){ out[[i]] <- ggplot(foo) } This will work: p <- qplot(data = mtcars, wt, mpg) for(i in 1:9) assign(paste0("m",i),p) ls() [1] "i" "m1" "m2" "m3" "m4" "m5" "m6" "m7" "m8" "m9" "p" Something like this should work: for (i in 1:9) { name <- paste("m", i, sep="") assign(name, ggplot(foo)) } 来源: https://stackoverflow.com/questions