반응형
R : 루프 중단
다음 브레이크가 내부 for 루프를 취소하는지 확인할 수 있습니까?
for (out in 1:n_old){
id_velho <- old_table_df$id[out]
for (in in 1:n)
{
id_novo <- new_table_df$ID[in]
if(id_velho==id_novo)
{
break
}else
if(in == n)
{
sold_df <- rbind(sold_df,old_table_df[out,])
}
}
}
글쎄요 당신의 코드는 재현 할 수 없기 때문에 우리는 확실히 알지 못합니다 help('break')
.
break는 for, while 또는 repeat 루프에서 나옵니다. 제어는 가장 안쪽 루프 외부의 첫 번째 문으로 전송됩니다.
예, break
현재 루프 만 중단합니다. 예를 들어 다음과 같이 작동하는 것을 볼 수도 있습니다.
for (i in 1:10)
{
for (j in 1:10)
{
for (k in 1:10)
{
cat(i," ",j," ",k,"\n")
if (k ==5) break
}
}
}
break 문은 for (in in 1:n)
.
개인적으로 나는 항상 break 문을 경계하고 콘솔에 인쇄하여 실제로 올바른 루프에서 벗어나고 있는지 다시 확인하여 두 번 확인합니다. 따라서 테스트하기 전에 다음 문을 추가하면 끝까지 도달하기 전에 중단 여부를 알 수 있습니다. 그러나 나는 당신이 변수를 어떻게 처리하고 n
있는지 모르기 때문에 그것이 당신에게 도움이 될지 모르겠습니다. n
도달하기 전에 깨질 지 여부를 미리 알고있는 곳에 테스트 값을 만드십시오 n
.
for (in in 1:n)
{
if (in == n) #add this statement
{
"sorry but the loop did not break"
}
id_novo <- new_table_df$ID[in]
if(id_velho==id_novo)
{
break
}
else if(in == n)
{
sold_df <- rbind(sold_df,old_table_df[out,])
}
}
참조 URL : https://stackoverflow.com/questions/6082655/r-break-for-loop
반응형
'Development Tip' 카테고리의 다른 글
XAML에서 매개 변수가있는 생성자 호출 (0) | 2020.12.15 |
---|---|
Enum.values () 대 EnumSet.allOf (). (0) | 2020.12.15 |
선택 쿼리의 출력을 postgres의 하나의 어레이에 저장 (0) | 2020.12.15 |
Python지도 개체는 구독 할 수 없습니다. (0) | 2020.12.15 |
MSVC 14.0 (VS 2015)으로 Boost를 컴파일하는 동안 알 수없는 컴파일러 버전 (0) | 2020.12.15 |