在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])
}
我在调用计算函数内的变量时在 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])
}