2017-10-10 13 views
0

compute関数内で変数を呼び出しているときにforループfor Rの問題が発生しました。私はneuralnetパッケージを使用しており、私は6つの異なる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]) 

だから、どんな助けにもなります。

ありがとうございます。

答えて

0

あなたのコマンド

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

単なる文字列を作成しない、それはcorrespoding名前の変数にアクセスしません。 getを使用する必要があります。

for (i in 1:6) { 
    predictions = compute(get(paste("neuralmodel_t", i, sep = "")), new_pred[, 1:4]) 
} 
関連する問題