Supongamos que necesitamos exportar una tabla de frecuencias completa para cada variable de una base de datos, la solución simple es emplear el comando tabout, ¿Peró que pasa si son N variables y las queremos todas ordenadas en una base de datos en stata? La primera solución que se me viene a la cabeza es empezar a crear variables con la información requerida y después colapsar. Solución más que ineficiente pero que se facilita con el siguiente comando
Comando: contract
Descarga: Preinstalado
Supongamos el siguiente ejemplo para una base categórica que contiene información de 25 individuos para 45 variables y las queremos ordenar todas en una tabla de frecuencias en Stata para posteriores análisis; adicionalmente, tengamos en cuenta que no todas las variables tienen la misma estructura de respuestas.
tab var
Ahora, generemos una base de datos en Stata a partir de cuatro variables similares ejecutando la siguiente rutina
global vars var1 var2 var3 var4
foreach var of global vars {
preserve
contract `var', f(Newvar1) cf(NewVar2) p(NewVar3) cp(NewVar4)
cap gen Question="`var'"
rename `var' Var
save `var'.dta, replace
restore
}
Una vez ejecutado este proceso se tienen 4 bases de datos intermedias con la siguiente estructura
Ya solo resta unir nuestras bases intermedias para obtener una sola base con la tabla de frecuencias de nuestras cuatro variables
use var1.dta, clear
append using "var2.dta" "var3.dta" "var4.dta"
El resultado sería una base como la siguiente
Para información adicional visiten el siguiente link: http://www.stata.com/help.cgi?contract
Enjoy!!!
No hay comentarios:
Publicar un comentario