Hola, Mira esta referencia sobre cómo usar "tryCatch()":
http://www.win-vector.com/blog/2012/10/error-handling-in-r/ Saludos, Carlos Ortega El 28 de mayo de 2015, 10:50, Sergio Castro < [email protected]> escribió: > Buenos días, > > Quiero hacer una función con un "if", que si devuelve un error dentro > de él se pare la ejecución de la función devolviendo un valor. El > código que tengo, para las pruebas, es el siguiente: > > prueba<-function(a){ > b<-"no ha hecho stop" > c<-"hago el stop" > if(a<3){ > variable<-"hola" > tryCatch({ > write("entro en el tryCatch","") > d<-variable*3 > },error=function(e){ > return(c) > stop(write("ha dado error","")) > }) > }else{ > b<-a*a*a > } > return (b) > } > > prueba(2) > > La salida que me devuelve R por pantalla es: > > entro en el tryCatch > [1] "no ha hecho stop" > > Cuando la que yo quiero es: > > entro en el tryCatch > ha dado error > [1] "hago el stop" > > Es decir que me saque por pantalla el mensaje que tengo en el stop y > que la salida de la función sea la variable c. > > Muchas gracias por vuestra ayuda. > > Un saludo > > _______________________________________________ > R-help-es mailing list > [email protected] > https://stat.ethz.ch/mailman/listinfo/r-help-es > -- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]] _______________________________________________ R-help-es mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-help-es
