R创建并调用动态变量名称

时间:2019-03-04 09:37:24

标签: r variables dynamic

我想生成动态的(带有循环中的索引号),然后像下面这样调用它:

for (i in seq(1,10)) {
 p_i <- i^2 #here _i is a dynamic value which is equate to the current i value
 d_i <- (p_i-20)*15 # here _i for both d_i and p_i are all dynamic
 }

非常感谢您的专业知识

1 个答案:

答案 0 :(得分:0)

这是可行的答案,但我不会使用,因为重新创建人工结构,使用向量或列表不是一个好习惯。

for (i in seq(1,10)) {
  assign(paste0("p_", i), i^2)
  assign(paste0("d_", i), (get(paste0("p_", i))-20)*15)
}

我将使用带索引的矢量化解决方案来访问您想要的内容:

p <- (1:10)^2
d <- (p-20)*15