使用粘贴来汇总文本以调用r中的向量

时间:2018-05-03 07:33:58

标签: r loops vector paste

我对R很陌生,所以可能仍在思考电子表格。我想通过一个函数(效果)循环一个矢量(列表)中的名称列表,并将文本附加到名称的前面和末尾一些文本(" data $"和" .time0"或" .time1")所以它引用了我已加载的数据帧的特定向量(即数据$ variable.time0和data $ variable.time1)。

粘贴只给我一个名为"数据$ variable.time0"或者"数据$ variable.time1"而不是引用我想要它的数据帧的向量。我能以某种方式将其转换为参考吗?

for (i in list){
  function(i)
}

effect <- function(i){
    time0 <- paste("data$",i,".time0", sep = ""))
    time1 <- paste("data$",i,".time1", sep = "")) 

#code continues but not relevant here

}

1 个答案:

答案 0 :(得分:1)

您可以使用eval(parse(text = "..."))来评估字符。

尝试

time0 <- eval(parse(text = paste("data$",i,".time0", sep = ""))))
在你的循环中