R Continue for Loop

Gustavo du Mortier 26 abril 2021
R Continue for Loop

Quando você tem muitas linhas de código dentro de um loop e deseja que R continue para a próxima iteração quando alguma condição for atendida, você pode escrever uma cláusula if que avalia a condição e, se for verdadeira, pule tudo no loop e continue para a próxima iteração. Esse salto é feito com a instrução next.

Um caso típico é quando você usa um loop para percorrer uma série de elementos de dados e fazer alguns cálculos em cada um, deixando de lado aqueles que atendem a uma determinada condição. No exemplo a seguir, passamos por um vetor de números, multiplicando todos eles, exceto aqueles que são múltiplos de 5.

result <- 1
base <- 5
x <- c(7, 5, 3, 10, 8, 4, 11, 15, 6, 13)
for (num in x) {
    if (num %% base == 0) {
        next
    }
    result <- result * num
}
paste ('Result:', result)

Resultado:

[1] 576576

Observe que o resultado é a multiplicação de todos os números do vetor, exceto 5, 10 e 15.

Artigo relacionado - R Loop