【问题标题】:Calling a defined variable inside a function which is in for loop, R在for循环中的函数内调用定义的变量,R
【发布时间】:2017-10-10 09:16:56
【问题描述】:

在 R 中的 for 循环中调用计算函数中的变量时出现问题。我使用了神经网络包,并计算了六个不同的 ann(人工神经网络)变量。这些存储在环境窗口的值部分。

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])

因此,我们将不胜感激。

提前致谢。

【问题讨论】:

    标签: r function for-loop environment-variables paste


    【解决方案1】:

    你的命令

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

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

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

    【讨论】:

      猜你喜欢
      • 2019-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-01
      相关资源
      最近更新 更多