loop for character variable names in r

2020-05-03 00:45发布

I have a list of variables, like a1, a2, a3. Then I want to do a loop for these variable, for instance, assign values. I tried paste, which just gave character like "a1", that was not what I am really look for. Can anyone provide a solution?

标签: r loops
2条回答
相关推荐>>
2楼-- · 2020-05-03 01:18

The loop assigns values to all elements in your object. 'a1' gets value '2'; 'a2' gets value '3'; etcetera.

library(stringr)
val <- str_c("a", 1:3)

for (i in 1:length(val)){
  assign(val[i], i+1)
}
get(val[1])#2
get(val[2])#3
get(val[3])#4
查看更多
啃猪蹄的小仙女
3楼-- · 2020-05-03 01:24

We can use mget to get the values in a list

lst <- mget(paste0("a", 1:3))

and then loop through the list and apply the function

lapply(lst, yourFunction)
查看更多
登录 后发表回答