Stata es un software estadístico desarrollado por StataCorp desde 1985.
Se ha convertido en una herramienta clave para el análisis de datos en ciencias sociales, economía, bioestadística y epidemiología, por su capacidad de manejar grandes bases de datos, realizar análisis complejos y generar gráficos profesionales.
Aplicaciones en salud:
- Análisis de encuestas de salud poblacional.
- Estudios clínicos y epidemiológicos (cohortes, casos y controles, transversales).
- Evaluación de tratamientos, pronósticos, diagnósticos.
- Análisis de supervivencia y regresiones multivariadas.

🖥️ Interfaz de Usuario en Stata

🔹 1. History (columna izquierda)
- Muestra todos los comandos que se han ejecutado durante la sesión.
- Muy útil si quieres repetir o copiar comandos previos.
🔹 2. Command (barra azul inferior)
- Aquí escribes los comandos directamente.
- Una vez que presionas Enter, se ejecutan y los resultados aparecen arriba.
🔹 3. Results (área central)
- Donde se muestra el resultado de cada comando.
- Incluye estadísticas, mensajes de error, tablas, y más.
🔹 4. Variables (arriba a la derecha)
- Lista las variables activas del dataset actual.
- Puedes hacer clic en una variable para insertarla en tu comando.
🔹 5. Properties (abajo a la derecha)
- Muestra propiedades de cada variable seleccionada:
- Tipo (numérica, texto)
- Etiqueta
- Etiqueta de valores
- Formato
- Notas
📁 3. Tipos de archivos en Stata (5 min)
.dta → archivo de datos.
.do → archivo de comandos.
.log → archivo de salida (resultados).
.gph → gráficos guardados.
🧠Siempre trabaja con un
.dofile y guarda un.logpara tener todo tu análisis documentado y reproducible.
🧪Explorando comandos básicos en Stata
📂 Paso 1: Cargar los datos desde Excel
Guarda tu archivo como datos_clase.xlsx en el Escritorio y luego escribe:
import excel "C:\Users\TuUsuario\Desktop\datos_clase.xlsx", firstrow clear
Asegúrate de reemplazar
TuUsuariopor el nombre real de tu computadora.
🔍 Paso 2: Examinar la estructura del archivo
describe
- Muestra las variables, tipo de dato, número de observaciones.
browse
- Visualiza los datos como en una hoja de cálculo.
📊 Paso 3: Resumen de variables
summarize
- Estadísticas básicas de todas las variables.
summarize edad
- Solo para
edad.
summarize edad, detail
- Estadísticas básicas de todas las variables.
Estadísticas básicas de todas las variables.
codebook sexo
- Examina los valores de la variable
sexo.
📃 Paso 4: Listar algunos datos
list edad sexo diabetes in 1/5
- Muestra los primeros 5 registros.
list edad sexo
- Solo muestra las columnas
edadysexo.
list edad sexo if edad >= 15
- Muestra solo los casos donde la edad es 15 o más
list edad diabetes if sexo == 2
- Muestra las edades y diabetes de quienes tienen
sexo = 2
sort edad
list edad
- Para ordenar en forma ascendente y luego listar:
gsort -edad
list edad
Para ordenar en forma descendente y luego listar:
sort sexo edad
list edad sexo
- Primero ordena por sexo y luego por edad dentro de cada grupo.
sortedad
list edad sexo diabetes
- Primero ordenas por edad, luego listas.
🔄 Paso 5: Convertir variables de texto a numérico
Si tienes variables categóricas en formato de texto y deseas convertirlas a numérico:
encode sexo, gen(sexo_num)
encode diabetes, gen(diabetes_num)
Esto genera nuevas variables numéricas a partir de texto, conservando las etiquetas
🧮 Paso 6: Crear una nueva variable
generate mayor_igual_15 = edad >= 15
- Crea una variable nueva con valor 1 si la edad es 15 o más.
🧹 Paso 7: Reemplazar valores (opcional)
Supón que en tu base:
sexo = 1es Hombresexo = 2es Mujer
Puedes crear una variable nueva en texto:
generate sexo_txt = ""
replace sexo_txt = "Hombre" if sexo == 1
replace sexo_txt = "Mujer" if sexo == 2
🧹 Paso 8: Eliminar Variables o Observaciones
Eliminar una Variable:
Para eliminar una variable que ya no necesitas en tu dataset, utiliza el siguiente comando:
drop sexo_txt
Esto eliminará la variable sexo_txt del dataset activo.
Eliminar Múltiples Variables:
Si deseas eliminar varias variables al mismo tiempo, sepáralas con un espacio:
drop edad diabetes
Eliminar Observaciones Específicas:
Si deseas eliminar casos específicos basados en una condición, utiliza:
drop if edad < 15
Esto eliminará todas las observaciones donde la edad sea menor a 15.
Eliminar un Rango de Observaciones:
Por ejemplo, para eliminar los primeros 5 registros:
drop in 1/5
🖥️ Destring en Stata
El comando destring en Stata convierte variables de tipo cadena (string) a variables numéricas. Es útil cuando los datos numéricos están almacenados como texto.
destring nombre_variable, replace
Convierte la variable de texto a numérica, reemplazando los valores originales.
💡 Consejos:
- Precaución: Una vez que usas
drop, no hay vuelta atrás. Asegúrate de guardar el archivo antes de eliminar datos importantes. - Filtrar antes de Eliminar: Antes de usar
drop, es útil usar el comandolistpara verificar que las observaciones que deseas eliminar son correctas:list edad sexo if edad < 15
✅ Paso 8: Guardar el archivo como .dta
save "pacientes.dta", replace
📌 El archivo se guardará en la carpeta de trabajo actual de Stata.
Puedes ver esa carpeta con:
pwd
Y puedes cambiarla con:
cd "C:\NuevaRuta\"
🎁 BONUS: Aprendiendo a Etiquetar tus Variables
Base de datos: pacientes.xlsx
Variables: edad, sexo, diabetes
(donde sexo: 1=Hombre, 2=Mujer y diabetes: 1=Sí, 2=No)
📂 1. Importar la base de datos desde Excel
import excel "C:\Users\TuUsuario\Desktop\pacientes.xlsx", firstrow clear
✅ Reemplaza la ruta con la correcta en tu PC.
🏷️ 2. Etiquetar los valores de sexo
label define sexo_lbl 1 "Hombre" 2 "Mujer"
label values sexo sexo_lbl
🏷️ 3. Etiquetar los valores de diabetes
label define diabetes_lbl 1 "Sí" 2 "No"
label values diabetes diabetes_lbl
🏷️ 4 Etiquetas variable edad:
Si el nombre de una variable no es claro o queremos un nombre más descriptivo, usamos:
rename edad edad_paciente
- Cambia el nombre de la variable edad a edad_paciente.
Podemos agregar una etiqueta para describir el significado de una variable:
label variable edad "Edad del paciente en años"
- Esto ayuda a documentar el propósito de cada variable dentro del dataset.
🔍 4. Verifica que las etiquetas se aplicaron
tabulate sexo
tabulate diabetes
tabulate edad
✅ Ahora verás «Hombre/Mujer» y «Sí/No» en lugar de 1/2.
✅ Para edad, obtendrás una tabla con el conteo de cada valor numérico de edad.
💾 5. Guardar la base con etiquetas
save "pacientes_etiquetado.dta", replace
BASE DE DATOS: