Supponiamo di avere la seguente funzione foo
. Quando eseguo il ciclo for
, desidero che salti il resto di foo
quando foo
restituisce inizialmente il valore di 0
. Tuttavia, break
non funziona quando è all'interno di una funzione.interruzione del ciclo for quando si esegue una funzione all'interno di un ciclo for in R
Come è attualmente scritto, ricevo un messaggio di errore, no loop to break from, jumping to top level
.
Qualche suggerimento?
foo <- function(x) {
y <- x-2
if (y==0) {break} # how do I tell the for loop to skip this
z <- y + 100
z
}
for (i in 1:3) {
print(foo(i))
}
Grazie a tutti per i commenti. Ripensandoci, avrei dovuto cambiare 'break' in' next', dal momento che sarebbe stato più in linea con quello che stavo cercando. – andrewj