2017-03-23 1 views
1

for 루프의 각 반복시 pred_pos을 결과로 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)

가. 이 조정하면

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

내가 당신의 코드가 작동한다고 생각 : 당신은 당신이 간단하게 사용할 수있는 벡터에 추가하고자 할 때

pred_pos <- vector()

을 이제 : 당신은 쓸 수 있어야한다고 :

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

관련 문제