在for循环中的函数内调用定义的变量,R

Calling a defined variable inside a function which is in for loop, R

我在调用计算函数内的变量时在 R 中的 for 循环内遇到问题。我使用了 neuralnet 包,我计算了六个不同的 ann(人工神经网络)变量。这些存储在环境 window.

的值部分中
for (i in 1:6) {

predictions = compute(paste("neuralmodel_t",i, sep=""),new_pred[,1:4])

}

此循环产生的错误是;

Error: $ operator is invalid for atomic vectors

通常,我可以运行这些功能分开。例如,下面的功能有效;

compute(neuralmodel_t1,new_pred[,1:4])

因此,我们将不胜感激。

提前致谢。

你的命令

paste("neuralmodel_t",i, sep="")

只是创建一个字符串,它不访问具有相应名称的变量。你必须使用 get.

for (i in 1:6) {
  predictions = compute(get(paste("neuralmodel_t", i, sep = "")), new_pred[, 1:4])
}