Truco

Capture - Controlando lo desconocido


Los comandos de STATA que resultan en un error,  genera un código distinto de cero (_rc). En STATA 10 y STATA 11 el código retornado puede ser revisado en la ventana de Review (es necesario expandir la ventana de Review para ver la columna _rc)

Si un comando en un archivo .do produce un error se detiene la programación. Esto se puede prevenir mediante un prefijo (capture) al comando principal.

log close / / ejemplo 1
capture log close / / ejemplo 2


En el ejemplo anterior 1, se cierra un archivo o un programa pero solo si el archivo de registro o Log ya fue abierto.  STATA requiere que un archivo Log se haya abierto anteriormente de esta forma puede ser cerrado en este caso no se observa un archivo abierto anteriormente.

En el ejemplo 2, un archivo do/ programa sigue funcionando, incluso si no hay archivo de registro abierto. El comando  capture permite errores para que sean ignorados.

Además de prevenir que un archivo do/programación se detenga, el comando capture también puede capturar el código de un comando de retorno en _rc. El código de retorno (_rc) se puede utilizar para tomar una decisión en su archivo do/programación.

Ejemplo
sysuse auto, clear
toString mpg, replace / / para los propósitos del ejemplo se convierte la variable mpg a una variable de texto
describe

foreach v de varlist price foreign
{
capture confirm numeric variable `v '
display _rc  / / le permiten ver el código de retorno
if  _rc  {/ / si no es _rc 0 (cero) indica que la declaración es verdadera y entra en Stata el bucle
destring `v ', replace
describe `v '

)
)

Ver también:
http://www.stata.com/statalist/archive/2009-06/msg00623.html (Un ejemplo de cómo utilizar un código de retorno para configurar el directorio por defecto en Stata.)

Ver ayuda
help confirm

help capture

¡Guarda esta información!

Descargalo en PDF

Descargar

¡Comparte este evento con tus colegas!

Email

Enviar

WhatsApp

Facebook

Cotizar
Próximos
Eventos

X

Mis cotizaciones:

Comentarios a tu solicitud:

Cotizar