2017-03-23 9 views
1

私はベクトルpred_posを、forループの繰り返しごとにpredの結果で埋めようとしています。しかし、私のpred_posベクトルは決して満たされません。 my_vecオブジェクトは、この問題のために再現する必要がないと思われる大きな文字ベクトルのリストです。これは、おそらく基本的なインデックスエラーです。私は、このforループからベクターをどのように組み込むかを知る必要があります。私は解決策を見つけ出すことができません。forループを使ってベクトルを取り込む

明示的状態に必要がない、あなたのコードの残りの部分が動作すると仮定すると
pred_pos <- vector("numeric" , 2) 


for(i in my_vec) { 
     for(r in pred_pos) { 
     inserts <- sapply(i, function(n) { n <- cond_probs_neg[n] }) 
     pred <- sum(unlist(inserts) , na.rm = T) * apriori_neg 
     pred_pos[r] <- pred 
     } 
     } 

答えて

2

pred_pos <- vector("numeric" , 2)

長さ2の数値ベクトルを作成すること。

pred_pos <- vector()

今、あなたはあなたが簡単に使用できるベクトルに追加したいとき:あなたは書くことができるはず

vector[length(vector)+1] <- someData

それが調整されている場合、私はあなたのコードが動作するはずと信じて:

pred_pos <- vector() 

for(i in my_vec) { 
     inserts <- sapply(i, function(n) { n <- cond_probs_neg[n] }) 
     pred <- sum(unlist(inserts) , na.rm = T) * apriori_neg 
     pred_pos[length(pred_pos)+1] <- pred 
} 
+0

ありがとうございます。 for(r in pred_pos)ループを完全に省略し、最初のforループを使用すると、実際には完全に機能します。 – Seanosapien

+0

良い点 - そのループは必要ありません! –

+0

はい。インデックスカウンタをうまく使って、ベクトルに値を設定することもできます。再度、感謝します。 – Seanosapien

関連する問題