Muchas gracias, Eso me ayuda en casi todo lo que necesito, a excepción del return. Si meto un return dentro del error, falla y sale del tryCatch, siguiendo con la ejecución. Mi flujo es el siguiente: Tengo una función A que llama a la función B. En la función B tengo el tryCatch. Si se produce un error en B, que lo tengo controlado por el tryCatch, quiero devolver un valor KO a la función A y parar la ejecución de B en ese punto.
Un saludo. El día 28 de mayo de 2015, 13:30, Carlos Ortega <c...@qualityexcellence.es> escribió: > 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 > <castro.rodriguez.ser...@gmail.com> 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 >> R-help-es@r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es _______________________________________________ R-help-es mailing list R-help-es@r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es