调用一个定义的变量在一个for循环中的函数,R
问题描述:
在调用一个变量在compute函数内部时,我在R里面有一个问题。我已经使用了神经网络包,并且我计算了六个不同的ann(人工神经网络)变量。这些存储在环境窗口的值部分。调用一个定义的变量在一个for循环中的函数,R
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])
}