[R-es] control de errores en una función

Sergio Castro castro.rodriguez.sergio en gmail.com
Mie Abr 15 15:01:49 CEST 2015


Muchas gracias, eso es justo lo que necesito.

Un saludo.

El 15 de abril de 2015, 13:59, Emilio L. Cano <emilopezcano en gmail.com>
escribió:

> Hola Sergio,
>
> Puedes evaluar tus expresiones y controlar errores dentro de la función
> tryCatch, por ejemplo:
>
> b <- 0
>
> tryCatch(
>   {
>     for (i in 1:length(a)){
>       b <- b+1
>     }
>   },
>   error = function(e){
>     ## Aquí puedes poner cualquier comprobación
>     cat("Se ha producido el siguiente error: ", e$message, "\n\tComprueba
> que existe el objeto a\n")
>     },
>   finally = {
>     ## Aquí puedes evaluar cualquier expresión
>     cat("Se ha producido un error en el código !!\n")
>   }
> )
>
> Un saludo,
> Emilio
>
>
> *Emilio L. Cano*
>
> Mobile: +34 665 676 225
> skype: emilopezcano
> twitter: @emilopezcano
> http://emilio.lcano.com
>
>
> El 15 de abril de 2015, 12:20, Sergio Castro <
> castro.rodriguez.sergio en gmail.com> escribió:
>
>> Buenos días,
>>
>> Estoy realizando un desarrollo sobre un problema de programación
>> lineal. Tengo una función en la que añado al modelo todas las
>> restricciones y quiero controlar que esa parte no da error (por
>> longitudes de vectores, por valores inexistentes, etc). He visto que
>> existe, como en otros lenguajes, un tryCatch, pero no sé bien como
>> utilizarlo. Estoy realizando pruebas a pequeña escala pero no me sale
>> el resultado esperado. Por ejemplo con este código:
>> > b<-0
>> > for (i in 1:length(a)){
>> + b<-b+1
>> + }
>>
>> Error: objeto 'a' no encontrado
>>
>> Lo que quiero es poder controlar si se devuelve error para mostrar un
>> mensaje más explicativo.
>>
>> Muchas gracias.
>> Un saludo.
>>
>> _______________________________________________
>> R-help-es mailing list
>> R-help-es en r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-help-es
>>
>
>

	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es