Tengo un problema: estoy ejecutando un bucle para procesar varios archivos. Mis matrices son enormes y, por lo tanto, a menudo me quedo sin memoria si no tengo cuidado.
¿Hay alguna forma de salir de un bucle si se crean advertencias? Simplemente sigue ejecutando el ciclo e informa que falló mucho más tarde ... molesto. ¿Alguna idea, oh sabios stackoverflow-ers?
options(warn=1)
para restaurar la configuración predeterminada.options("warn"=0)
.op=options(warn=2)
, 2) hacer lo tuyo y luego 3) restablecer conoptions(op)
, lo que te lleva de regreso awarn=0
este caso.R le permite definir un controlador de condiciones
lo que resulta en
La ejecución continúa después de tryCatch; podría decidir terminar convirtiendo su advertencia en un error
o manejar la condición con gracia (evaluación continua después de la llamada de advertencia)
que imprime
fuente
for
sería aún mejor :)Establezca la
warn
opción global :Tenga en cuenta que una "advertencia" no es un "error". Los bucles no terminan por advertencias (a menos que
options(warn=2)
).fuente