Sei sulla pagina 1di 36

MANUAL DE STATA 13

INTRODUCCION

El objetivo de este manual es familiarizarse con el paquete Stata. La versin utilizada en

la elaboracin de este manual es Stata IC 13 para la familia Windows.

Stata es una aplicacin desarrollada para realizar anlisis estadsticos sobre muestras

aleatorias de poblaciones. Stata tiene un lenguaje de programacin sencillo y potente que

requiere un cierto esfuerzo inicial hasta que el usuario empiece a acostumbrarse con los

comandos; tambin suministra un sistema de ayuda detallado y completo. Conviene

recordar que el lenguaje de programacin es sensible al uso de letras maysculas y

minsculas.

En stata podemos trabajar de dos modos: mediante un sistema de mens y ventanas, o

mediante la sintaxis (escribiendo los comandos que deseamos ejecutar).

En este curso usaremos una combinacin de ambos mtodos. Sin embargo, el trabajo

con sintaxis a pesar el aprendizaje requiere mayor esfuerzo, tiene ventajas:

Replicabilidad. Cada vez ms las revistas acadmicas exigen los archivos de

sintaxis para la publicacin de los artculos.

Eficiencia. En el trabajo diario, el uso de la sintaxis representa un incremento

exponencial de nuestra eficiencia.

Control. La posibilidad de control, deteccin de errores y trabajo colaborativo se

incrementa enormemente cuando usamos la sintaxis.


INICIO DE STATA

Ambiente de trabajo de stata 13

En el men de inicio de Windows pulse doble click en el icono de stata. Al ejecutar


aparecer la siguiente pantalla:

La pantalla principal de stata se subdivide en cuatro ventanas bsicas, adems de la


barra de men y la barra de herramientas.

Barra de herramientas Ventana de repaso Ventana de resultados

Barra de men

Figura 1.Principal ventana de Stata

Directorio de trabajo
Ventana de rdenes Ventana de variables

Las ventanas de Stata:

La ventana resultados se despliegan los resultados a medida que se van ejecutando los
distintos comandos.

La ventana command (comandos) permite escribir las rdenes que se ejecutarn y se


desplegarn en la ventana resultados al presionar la tecla enter. Es uno de las principales
ventanas de relacin del usuario y el programa.

La ventana review (revisin) guarda el historial de los comandos ejecutados desde el


inicio de la sesin en Stata. Si se quiere repetir algn comando, puede seleccionarse con
el mouse en vez de escribirlo en la ventana command.

La ventana variable Esta ventana nos muestra una lista de las variables que contiene la
base de datos, as como sus etiquetas. Esto nos permite seleccionarlas mediante un solo
clic en la flecha que aparece o dobel clic sobre al variable, para ingresarla a la ventana de
comandos sin necesidad de memorizar o escribir los nombres de todas ellas.

Administrador de variable. Que se muestra en ala figura 2 es un ventana de dialogo


especial para inspeccionar y cambiar las propiedades de las variables; se abre haciendo
clin en el botn . Permite el cambio del nombre de las variables, la etiqueta y el
formato. Al igual que otras ventanas de dialogo genera comandos que aparecen en la
ventana de resultados.

Figura 2. Administrador de varibles

Interface del usuario

Para ajustar a las preferencias del usuario tamao de la pantalla, color de pantalla,
numero de ventanas, tamao de letra etc. en el men ir a:

EditPreferencesLoad preferences.combine layout


La presentacin de la pantalla cambiara como se muestra en la figura

Figura 3. Configuracin de la ventana principal de Stata

Figura 4. Cambio de configuracin de la ventana principal de Stata

Para tener nuevamente la presentacin de la pantalla por defecto:

EditPreferencesLoad preferences.widescreen layout (default)


En la ventana de comandos puede ingresar comandos simples y ejecutarlos presionando
la tecla Enter. En la ventana de comandos escriba la siguiente orden:

. sysuse auto.dta

Aparecer la base de datos auto compare con la figura 5.

Figura 5. Ventana principal de Stata con la base de datos auto.

Cuando los resultados en la ventana de resultados estn llenos aparece la palabra more
en la parte inferior, al presionar la tecla Enter, la siguiente lnea se mostrar. Si no desea
esta interrupcin, puede escribir:

. set more off

Figura 6. Resultados bloqueados con more.


La ventana de revisin mostrara los comandos recientemente ejecutados. Puede hacer
clic en los comandos e inmediatamente aparecer en la ventana de comandos. Ubicando
el cursor en la ventana de comandos tambin puede desplazar los comandos uno por uno
presionando la tecla RePag y AvPag.

Tambin puede copiar los comandos de la ventana de revisin en un archivo do-file.


Usando el mouse seleccione uno o ms comandos presionando a la vez la tecla control
(Ctrl), o presiona la tecla control y letra A (Ctrl+A) para seleccionar todos los comandos.
Luego clic derecho y enviar a send to a do-file.

La ventana variables muestra la lista de variables en la memoria y las etiquetas. Al dar


doble clic en el nombre de la variable o un clic en la flecha que aparece en la variable
inmediatamente se mostrara en la ventana de comandos.

Descripcin de la barra de herramientas

En la barra de herramientas encontrara botones, ponga el puntero sobre el icono y


aparecer la descripcin.

La lista de botones son los siguientes:

Open: Abre una base de datos en formato de Stata.

Save: Guarda en el disco la base de datos actualmente en memoria.

Print result: Imprime la ventana de resultados.

Log begin/close/suspend/resume Abre un archivo de registro nuevo o aade a otro.


Cierra o suspende provisionalmente el registro.

New Viewer: Coloca la ventana de registro sobre la ventana de Stata.

Bring Graph to Front: Coloca la ventana de grficas al frente de las otras ventanas
de Stata

8) New file editor : Permite crear archivos de sintaxis con extensin do

9) Data Editor: Abre el editor de datos y lo coloca al frente de las otras ventanas de
Stata, permite ingresar datos.

10) Data editor (Browser) Abre el visualizador de datos y lo coloca al frente de las
otras ventanas de Stata, permite ver los datos.
11) Adminstrador de variables: Permite editar las variables.

12) Clear -more- Condition Le instruye a Stata que contine despus de parar
durante una produccin larga.

13) Break Interrumpe lo que est haciendo Stata.

Ayuda del sistema

El programa Stata posee un sistema de ayuda excelente. Para solicitar ayuda sobre un
tema, slo se escribe la orden help seguida de la palabra clave.
El comando help, es uno de los comandos ms importantes de Stata, pues presenta la
sintaxis de los comandos as como ejemplos de cmo se usan. Para pedirle ayuda a Stata
sobre un comando se escribe en la ventana de comandos help (o hel o he) seguido del
nombre del comando que queramos conocer.
Abramos el archivo auto.dta y luego escribamos:
help table

Figura 7. Resultados de la salida help.


Notemos que todo lo que va entre corchetes es optativo y que en la sintaxis de los
comandos primero se ponen las variables, los condicionales (if) preceden a los rangos
(in), luego el peso, y les siguen las opciones despus de un coma:
[varlist] es la lista de variables
[if] permite seleccionar la muestra bajo una condicin
[in] permite seleccionar la muestra de un rango de datos
[weight] son los pesos o ponderaciones

La sintaxis de los comandos Stata tiene un formato comn:


[by lista de var:] comando lista de var [if expresin] [in rango][ponderadores]
[using nombre del archivo], [opciones]]

Sin embargo usaremos una versin mucho mas simple como:


[by lista de var:] comando lista de var [if expresion], [opciones]

El prefijo by permite aplicar el mismo comando separando la base de datos en subgrupos


de nidos por lista de var. Posteriormente viene el comando seguido por una segunda lista
de var a las cuales se les aplicara el comando elegido.

Los datos utilizados para evaluar el comando pueden ser limitados con las opciones if e
in.

Las opciones especficas al comando tienen que ser precedidas por una coma.

Otra informacin clave es la forma en que podemos obtener ayuda. Todos los comandos
Stata tienen informacin acerca de la manera en que deben utilizarse (sintaxis y
opciones); para acceder a ella es solo cuestin de escribir la palabra help seguida por el
nombre del comando en la ventana de comandos de Stata. Si no conoce el nombre del
comando que realiza la tarea que tiene en mente, escriba la palabra findit seguida por
una palabra que este relacionada con dicha tarea. Este comando busca en toda la
documentacin tanto interna como aquella que se encuentra en la pagina red de Stata.
Stata se actualiza casi continuamente, los usuarios pueden escribir programas y
mandarlos al archivo de SSC (Statistical Software Components), por lo tanto es necesario
hacer actualizaciones de forma regular. El comando update query le indicar si es
necesario hacer actualizaciones.

Tipos de archivos

Los archivos de stata contienen las siguientes extensiones:

.dta archivo de datos. Esta extensin solo es interpretada por stata y stat/transfer

.do archivo de comandos. Es una archivo codigo ASCI que puede ser abrirto en un
block de notas.

.ado programas. Son archivos de programas de stata

.sthlp archivo de ayuda. Es la extensin donde se guarda toda la documentacin de


ayuda de stata.
.smcl archivos log. Es un archivo especial para guardar las salidas de log, muestra en la
ventana viewer, solo es reconocido por stata

.gph grficos. Los grficos de stata se guardan en .gph

La nueva versin de Stata 13 puede ejecutar algunas rdenes desde el men a travs de
uso de ventanas, trae activada la opcin automticamente y proporciona el acceso directo
desde el men a opciones como por ejemplo Data, Graphics Statistics y el User, los
cuales permiten realizar a travs de ventanas muchas de las rdenes que se hacen va
programacin en la ventana de comandos.

Casi todas las rdenes de Stata se han implementado como dilogos y se pueden obtener
por medio de mens que se han organizado por temas. Slo elija una orden de los mens
de Statistics, Graphics o Data, complete el dilogo y la orden se emitir a Stata.
Abrir una base de datos

Para abrir una base de datos desde el men principal, seguimos la siguiente ruta:
File/Open. En el cuadro de dilogo que aparece a continuacin se elige el archivo
deseado, que en este caso tiene la extensin de los archivos de datos nativos de Stata,
dta.

Figura 8. Ruta para abrir un archivo desde el men.

Como ejemplo de sesin abriremos el archivo auto.dta:

Este archivo contiene una base de datos de autos: 74 observaciones y 12 variables


definidas a continuacin:

Observemos que se han suscitado cambios en las siguientes ventanas:


Figura 9. Cambios de las ventanas al abrir un archivo.

Cuando cargamos en la memoria el archivo auto.dta mediante el men Stata, ste ha


incorporado en la ventana de resultados los comandos equivalentes que se hubiesen
tenido que poner en la ventana Command para obtener el mismo resultado. Los
comandos se han almacenado en la ventana Review del mismo modo que sucedera si
hubisemos digitado los comandos en dicha ventana. Si bien trabajar con la barra de
herramientas y con los mens desplegables es ms intuitivo, para el usuario experto es
ms rpido y sencillo potente trabajar directamente con los comandos (lo cual le permite
emplear los archivos de ejecucin y la programacin avanzada)

Inspeccin de los datos

Para ver una descripcin rpida de los datos en la ventana command ingresamos
describe.
Para copiar a MSWord lo que acaba de aparecer en la ventana de resultados
seleccionamos dicho resultado y lo copiamos como texto o como tabla, luego de pegarlo
le aplicamos formato indicando el tipo tamao 9 y fuente Courier New.
Figura 10. Salida en la ventana de resultados.

Para ver los datos tal como si los visemos en MSExcel digitamos browse y aparece la
ventana Stata Editor.

Figura 11. Ventana de data editor (browser).


Para editar los datos ingresamos la ventana data editor o variables manager

Figura 12. Ventana de data editor (Edit).

En cuanto a los Tipos de variables, Stata tiene 5 tipos de variables de datos:

Storage 0 without
type Minimum Maximum being 0 bytes
-----------------------------------------------------------------------------
byte (entero) -127 100 +/-1 1
int (entero) -32,767 32,740 +/-1 2
long (entero) -2,147,483,647 2,147,483,620 +/-1 4
float(nmero real)-1.70141173319*10^38 1.70141173319*10^38 +/-10^-38 4
doubl(nmero real)-8.9884656743*10^307 8.9884656743*10^307 +/-10^-323 8
-----------------------------------------------------------------------------
Stata por defecto le asigna formato float a una variable de datos nueva.
Stata13.0 soporta cadenas de hasta 2000 000 000 caracteres de largo.
String
storage Maximum
type length Bytes
-----------------------------------------
str1 1 1
... . .
... . .
str2045 2045 2045
strL 2000000000 2000000000
-----------------------------------------
Ingresando datos con el editor

Hay varias formas en que podemos introducir datos en Stata es posible introducir datos a
mano utilizando el comando edit, el cual abre una hoja de calculo. Tambin los datos
pueden ser introducidos cortndolos desde Excel y pegndolos en la hoja de clculo de
Stata.
Para ingresar los datos directamente al data editor (edit) debe abrir el editor e ingresar
los datos pulsando las flechas del teclado, el enter o el Tab. Para cambiar el nombre de
las variables ir a la ventana de variable y ubicarse en propiedades en el cual puede
cambiar el nombre, la etiqueta y el formato de la variable.

Ejemplo: tenemos la siguiente encuesta:


Sexo: H=1 M=0
Profesin: Estudiante=1 Economista=0
Edad
Loa alumnos tienen el habito de fumar? Si=1, A veces=2, No=3

Cargamos esta informacin en el editor de stata:

Figura 13. En la ventana de data editor (Edit) se puede ingresar valor y caractersticas de la variable

Supongamos que deseamos ingresar los datos de la tabla de MSExcel. Para ello abra el
editor y pegue los datos. Si los datos estaban en columnas, y tenan un encabezado con
el nombre de la variable, Stata pedir saber si la primera lnea son los nombres de las
variables de ser el caso las nombrar con los mismos nombres al pegar.
Figura 14. Ventana de data editor (Edit) se puede ingresar un conjunto de variables.

Guardar una base de datos

Stata emplea la extensin dta para los archivos de bases de datos. Para grabar se pulsa
el botn que tiene el icono de un disco o desde el men principal: File/ Save o File /Save
as.

Grabaremos la base de datos con un nuevo nombre: extension.dta.

Stata no guarda en el disco los cambios en las bases de datos a menos que ejecutemos
el comando save (en eso se parece a MSExcel), por lo que si se apaga o cuelga la
mquina perdemos los cambios.

En Stata hay compatibilidad hacia adelante, es decir, los comandos y bases de datos de
Stata10 sirven en Stata13 pero lo inverso no siempre es posible. Por ello si trabajamos
con una base de datos en Stata13 y luego la vamos a abrir en Stata10 deberemos
grabarla con formato de Stata10 desde el Stata13.

El do-file

A travs de una ventana similar a la de un editor de textos es posible crear una secuencia
de comandos de Stata, los cuales se almacenan a travs de los llamados do-files. La
ventaja de estos archivos (de extensin *.do) es que permiten replicar un conjunto de
instrucciones previamente almacenadas. Esto ayuda a ir corrigiendo posibles errores en la
ejecucin de los comandos, adems de permitir guardar la rutina de comandos ejecutados
para sesiones posteriores.
Los do files permiten
1. Mantener un registro de todo lo que se ha hecho en la sesin y poder replicarlo.
2. Correr una gran cantidad de comandos.
Se pueden considerar como un mecanismo de seguridad por permitir fcilmente regresar
a la data original sin importar cuantas transformaciones se hayan realizado.
Recordemos que para abrir la ventana del Do-file Editor pulsamos el botn
correspondiente o las teclas {ctrl+8} o desde el men principal: Windows/Do-file Editor.
Para ingresar datos en una archivo do file.
En el menu window Do-file Editor New file Editor
Ingresar los siguientes datos input a b c
1 5 10
087
146
end
generate d=c-b
list
save myfile
Luego en el men de new file execute(do)

Variables

Stata reconoce dos tipos principales de variables: numricas y categricas Para muchos
propsitos las variables numricas son ms usadas que las variables categricas y
algunos anlisis no funcionan con las variables categricas

El comando summarize calcula y muestra estadsticas de resumen.

summarize _all muestra las estadsticas de todas las variables


summarize muestra las estadsticas de todas las variables
sum abreviatura de summarize
summarize sex age muestra las estadsticas de dos variables
summarize sex-age muestra las estadsticas de las variables desde sex hasta age
summarize pro* muestra las estadsticas de la variables que empiecen en pro
summarize age if sex==1 muestra las estadsticas de la variable en solo hombres.
summarize bmi in 1/10 muestra las estadsticas de las 10 primeras variable bmi

Generando variable
generate heavy=0 se genera la variable heavy
replace heavy =1 if sex==1 & weight>90 incluye hombres >90k
replace heavy =1 if sex==2 & weight>80 incluye mujeres >80k
replace heavy =. if missing(weight) no incluye si el peso est ausente
generate days=date1-date2 se genera das
generate years=(dat12-date1)/365.25 se genera aos
generate bday=day(bdate) extrae el dia de la variable bdate
generate bmonth=dmonth(bdate) extrae el mes de la variable bdate
generate byear=year(byear) extrae el ao de la variable bdate
generate nation=Danish if ph==45 genera la variable categrica nation
destring xstr, generate(xnum) convierte variable categrica numrica
a numrica
encode sex, generate(ender) convierte variable categrica no
numrica a numrica
generate idstr=string(idnum format%010.0f) convierte la variable numrica a
categrica
egen mage=mean(age) genera la variable mage que es la
media de la variable age

Etiquetas
label data Datos de Fertiidad1999-2007. Ver 2 Etiqueta de la base de datos
label variable sexo Genero Etiqueta de la variable sexo
label define sex 1 male 2 female Valores de la etiquetas sex
label values sexo sex Asocia la etiqueta sex a variable sexo
label drop sex _all Elimina la etiqueta
recode sex (1=1)(0=2),generate(gender) Recodifica la variable sex 1 si sex es 1
y 0 si sex es 2 en la variable creada
gender

recode sex (1=1 male) (0=2 female, Recodifica la variable sex 1 si sex es 1
generate(gender) y 0 si sex es 2 con las etiquetas en la
variable creada gender

rename gender sex Renombra la variable gender por sex


use xz_v1.dta Compara la base xz_v1 con la base
cf _all using xz_v2.dta,verbose xz_v2 la opcin verbose muestra las
diferencias

Visin general la base de datos

Se mostrara los diferentes comandos para la descripcin de datos.

. webuse lbw.dta
(Hosmer & Lemeshow data)
. describe
Contains data from http://www.stata-press.com/data/r13/lbw.dta
obs: 189 Hosmer & Lemeshow data
vars: 11 15 Jan 2013 05:01
size: 2,646
-------------------------------------------------------------------------------
storage display value
variable name type format label variable label
-------------------------------------------------------------------------------
id int %8.0g identification code
low byte %8.0g birthweight<2500g
age byte %8.0g age of mother
lwt int %8.0g weight at last menstrual period
race byte %8.0g race race
smoke byte %9.0g smoke smoked during pregnancy
ptl byte %8.0g premature labor history (count)
ht byte %8.0g has history of hypertension
ui byte %8.0g presence, uterine irritability
ftv byte %8.0g number of visits to physician
during 1st trimester
bwt int %8.0g birthweight (grams)
-------------------------------------------------------------------------------
Sorted by:
Agregar las etiquetas a las variables
label define yesno 0 No 1 Yes
label values low smoke ht ui yesno
label list
yesno:
0 No
1 Yes
smoke:
0 nonsmoker
1 smoker
race:
1 white
2 black
3 other

El comando codebook muestra todas la informacin de cada una de las variables, con la
opcin compact muestra un resumen de las caractersticas de cada variable: valores no
perdidos, numero de observaciones, valores nicos, media, los valores mximo y mnimo
como la etiqueta.
.
codebook, compact

Variable Obs Unique Mean Min Max Label


-------------------------------------------------------------------------------
id 189 189 121.0794 4 226 identification code
low 189 2 .3121693 0 1 birthweight<2500g
age 189 24 23.2381 14 45 age of mother
lwt 189 76 129.8201 80 250 weight at last menstrual period
race 189 3 1.846561 1 3 race
smoke 189 2 .3915344 0 1 smoked during pregnancy
ptl 189 4 .1957672 0 3 premature labor history (count)
ht 189 2 .0634921 0 1 has history of hypertension
ui 189 2 .1481481 0 1 presence, uterine irritability
ftv 189 6 .7936508 0 6 number of visits to physician du...
bwt 189 133 2944.286 709 4990 birthweight (grams)
-------------------------------------------------------------------------------

Resumen de las variables numricas

summarize lwt bwt age

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
lwt | 189 129.8201 30.57515 80 250
bwt | 189 2944.286 729.016 709 4990
age | 189 23.2381 5.298678 14 45

Listar los primeros 5 valores de la variable smoke


list smoke in 1/5

+-------+
| smoke |
|-------|
1. | No |
2. | No |
3. | Yes |
4. | Yes |
5. | Yes |
+-------+
Lista el valor 5 contado desde el ltimo de la lista de la variable smoke

list smoke in -5

+-------+
| smoke |
|-------|
185. | Yes |
+-------+

Listar los ltimos valores smoke del 185 al ltimo.


list smoke in 185/-1

+-------+
| smoke |
|-------|
185. | Yes |
186. | No |
187. | Yes |
188. | No |
189. | Yes |
+-------+

Listar los primeros 5 valores desde la variable id hasta smoke, sin etiquetas

list id-smoke in 1/5, nolabel

+-------------------------------------+
| id low age lwt race smoke |
|-------------------------------------|
1. | 85 0 19 182 2 0 |
2. | 86 0 33 155 3 0 |
3. | 87 0 20 105 1 1 |
4. | 88 0 21 108 1 1 |
5. | 89 0 18 107 1 1 |
+-------------------------------------+

Tab permite mostrar una en una tabla de frecuencias de la variable selecionada.

tab low

birthweight |
<2500g | Freq. Percent Cum.
------------+-----------------------------------
No | 130 68.78 68.78
Yes | 59 31.22 100.00
------------+-----------------------------------
Total | 189 100.00
Tab1 permite mostrar mltiples variables cada una en una tabla de frecuencias.

tab1 race low ui

-> tabulation of race

race | Freq. Percent Cum.


------------+-----------------------------------
white | 96 50.79 50.79
black | 26 13.76 64.55
other | 67 35.45 100.00
------------+-----------------------------------
Total | 189 100.00

-> tabulation of low

birthweight |
<2500g | Freq. Percent Cum.
------------+-----------------------------------
No | 130 68.78 68.78
Yes | 59 31.22 100.00
------------+-----------------------------------
Total | 189 100.00

-> tabulation of ui

presence, |
uterine |
irritabilit |
y | Freq. Percent Cum.
------------+-----------------------------------
No | 161 85.19 85.19
Yes | 28 14.81 100.00
------------+-----------------------------------
Total | 189 100.00

Tab con dos variables permite mostrar tabla de contingencia.


tab low race

birthweigh | race
t<2500g | white black other | Total
-----------+---------------------------------+----------
No | 73 15 42 | 130
Yes | 23 11 25 | 59
-----------+---------------------------------+----------
Total | 96 26 67 | 189

Tab2 con dos a mas variables permite mostrar tablas de contingencias cada par variables
categricas.

. tab2 race low ui

-> tabulation of race by low

| birthweight<2500g
race | No Yes | Total
-----------+----------------------+----------
white | 73 23 | 96
black | 15 11 | 26
other | 42 25 | 67
-----------+----------------------+----------
Total | 130 59 | 189

-> tabulation of race by ui

| presence, uterine
| irritability
race | No Yes | Total
-----------+----------------------+----------
white | 83 13 | 96
black | 23 3 | 26
other | 55 12 | 67
-----------+----------------------+----------
Total | 161 28 | 189

-> tabulation of low by ui

| presence, uterine
birthweigh | irritability
t<2500g | No Yes | Total
-----------+----------------------+----------
No | 116 14 | 130
Yes | 45 14 | 59
-----------+----------------------+----------
Total | 161 28 | 189

Table permite construir tablas complejas.


table low race smoke

------------------------------------------------------
| smoked during pregnancy and race
birthweig | -------- No ------- ------- Yes -------
ht<2500g | white black other white black other
----------+-------------------------------------------
No | 40 11 35 33 4 7
Yes | 4 5 20 19 6 5
------------------------------------------------------

Con las opciones by organiza las tabla para fumadores y no fumadores verticalmente, las
opciones row y col agrega totales verticales y horizontales, y subwidth determina la
longitud del ttulo de la cabecera de la primera columna.
table low race, by(smoke) row col stubwidth(20)

-------------------------------------------------
smoked during |
pregnancy and | race
birthweight<2500g | white black other Total
---------------------+---------------------------
No |
No | 40 11 35 86
Yes | 4 5 20 29
Total | 44 16 55 115
---------------------+---------------------------
Yes |
No | 33 4 7 44
Yes | 19 6 5 30
Total | 52 10 12 74
-------------------------------------------------

Opciones frecuentemente usadas:


column or col muestra el porcentaje de columa
row muestra el porcentaje de fila
nolabel muestra los cdigos en vez de las etiquetas
missing incluye en la tabla los datos perdidos. Por defecto son omitidas
chi2 calcula la prueba chi cuadrado de Pearson .
exact calcula la prueba exacta de Fisher

Descripcin de la distribucin

El comando summarize,d muestra mayor informacin de la variable: media, mediana, percentile


etc.

. summarize bwt,detail

birthweight (grams)
-------------------------------------------------------------
Percentiles Smallest
1% 1021 709
5% 1790 1021
10% 1970 1135 Obs 189
25% 2414 1330 Sum of Wgt. 189

50% 2977 Mean 2944.286


Largest Std. Dev. 729.016
75% 3475 4174
90% 3884 4238 Variance 531464.4
95% 3997 4593 Skewness -.2069782
99% 4593 4990 Kurtosis 2.888821

Los percentiles se obtienen con el comando centile:


. centile bwt, centile(25 50 75)

-- Binom. Interp. --
Variable | Obs Percentile Centile [95% Conf. Interval]
-------------+-------------------------------------------------------------
bwt | 189 25 2412 2297.521 2513.759
| 50 2977 2835.509 3090
| 75 3481 3318.32 3641.175

Tabstat muestra las estadsticas de resumen de las variables numricas dividida por una
variable categrica

. tabstat age lwt bwt, by(race)

Summary statistics: mean


by categories of: race (race)

race | age lwt bwt


-------+------------------------------
white | 24.29167 132.0521 3103.01
black | 21.53846 146.8077 2719.692
other | 22.38806 120.0299 2804.015
-------+------------------------------
Total | 23.2381 129.8201 2944.286
--------------------------------------

tabstat age lwt bwt, stat(n mean sd q) col (stat)

variable | N mean sd p25 p50 p75


-------------+------------------------------------------------------------
age | 189 23.2381 5.298678 19 23 26
lwt | 189 129.8201 30.57515 110 121 140
bwt | 189 2944.286 729.016 2414 2977 3475
--------------------------------------------------------------------------

Grficos
Los principales grficos son:
Grafico de barras
Grafico de cajas
Graficos de puntos
Graficos de pie o tortas
Grafico de dispersin o de nube de puntos o scatterplot

El grafico de barras muestra la distribucin de una cantidad (suenta, suma, medias) entre
grupos definido por una o mas categoras.
En un archivo do file ingrese los siguientes datos:

input str5 country public private total


Australia .7 .7 1.4
Britain .7 .4 1.1
Canada 1.5 .9 2.4
Denmark 1.5 .1 1.6
France .9 .4 1.3
Germany .9 .2 1.1
Ireland 1.1 .3 1.4
Netherlands 1 .4 1.4
Sweden 1.5 .2 1.7
United States 1.1 1.2 2.3
end
graph hbar (asis) public private, ///
over(country, sort(total)descending) ///
title("Spending on tertiary eduction as % of GDP, 1999")
note("Source:OECD,Education at a Glance 2002")

Spending on tertiary eduction as % of GDP, 1999


Canad
Swede
Denma
Nethe
Irela
Austr
Franc
Germa
Brita

0 .5 1 1.5

public private
Source:OECD,Education at a Glance 2002

graph hbar (asis) public private, ///


over(country, sort(total)descending) stack ///
title("Spending on tertiary eduction as % of GDP, 1999") ///
note("Source:OECD,Education at a Glance 2002")

Spending on tertiary eduction as % of GDP, 1999


Canada
United States
Sweden
Denmark
Netherlands
Ireland
Australia
France
Germany
Britain

0 .5 1 1.5 2 2.5

Public Private
Source:OECD,Education at a Glance 2002
sysuse nlsw88.dta
graph bar (mean) wage, over(smsa, descend gap(-30)) over(married)
over(collgrad, relabel(0 "Not college graduate" 1 "College graduate"))
title("Average Hourly Wave, 1988 ,Women Aged 34-46") subtitle("by College
Graduation, Marital Status, and SMSA residence") note ("Source: 1988 data
from NLS, US Dep. of Labor Bureau")

Average Hourly Wave, 1988 ,Women Aged 34-46


by College Graduation, Marital Status, and SMSA residence

15
mean of wage

10
5
0

single married single married


College graduate college grad
nonSMSA SMSA
Source: 1988 data from NLS, US Dep. of Labor Bureau

graph dot (mean) wage, over(occupation) by(, title("Average hourly wage,


1988, women aged 34-46") note("Source: 1988 data from NLS, US. Dept. of
Labor")) by(collgrad)

Average hourly wage, 1988, women aged 34-46


not college grad college grad

Professional/technical Professional/technical
Managers/admin Managers/admin
Sales Sales
Clerical/unskilled Clerical/unskilled
Craftsmen Craftsmen
Operatives Operatives
Transport Transport
Laborers Laborers
Farmers Farmers
Farm laborers Farm laborers
Service Service
Household workers Household workers
Other Other

0 5 10 15 0 5 10 15
mean of wage
Source: 1988 data from NLS, US. Dept. of Labor

sysuse bplong, clear


graph box bp, over(when) over(sex) ytitle("Sistolic blood pressure")
title("Response to treatment, by sex") subtitle( "(120 preoperative
patients)")note("Source: Fictional drug trial")
Response to treatment, by sex
(120 preoperative patients)

180
Sistolic blood pressure

160
140
120

Before After Before After


Male Female
Source: Fictional drug trial

sysuse auto.dta, clear


twoway (scatter mpg weight), by(foreign, total row(1))

Domestic Foreign Total


40
30
Mileage (mpg)

20
10

2,000 3,000 4,000 5,000 2,000 3,000 4,000 5,000 2,000 3,000 4,000 5,000
Weight (lbs.)
Graphs by Car type

twoway (scatter mpg weight), by(foreign, total col(1))

Domestic
10 20 30 40

Foreign
Mileage (mpg)

10 20 30 40

Total
10 20 30 40

2,000 3,000 4,000 5,000


Weight (lbs.)
Graphs by Car type
sysuse sp500,clear
drop if _n > 57
graph twoway rcap high low date

1400
1300
High price/Low price

1200
1100

01jan2001 22jan2001 12feb2001 05mar2001 26mar2001


Date

sysuse auto.dta, clear


twoway (scatter mpg weight, mlabel(make) ) (lfit mpg weight)

VW Diesel
40

Datsun
Subaru210
Plym. Champ

Toyota Corolla
30

MazdaDodge
GLCColt
Chev. Chevette
Honda
Ford Fiesta
Civic Plym. Arrow
Renault Le Car
Buick Opel
Plym. Sapporo
VWVWRabbit
Scirocco
Plym.
Honda Horizon
Accord
BMW 320i
Datsun 510 Pont.
Olds
Chev.
Sunbird
Starfire
Monza
AudiVWFoxDasher
Datsun 200
Merc.
AMCBobcat
Spirit
AMC Concord
Chev.
Chev.Malibu
Monte Carlo
Fiat Strada Ford
Datsun
Mustang810 Olds 98Cad. Seville
20

Merc. ZephyrBuick
BuickCentury
Regal
Pont.
Pont.
Olds
Olds
Olds
Le
Buick
Grand
Pont.
Chev.
Cutlass
Cutl
Mans
Omega
Skylark
Phoenix
Prix
Supr
Nova
Toyota Celica
Toyota Corona Plym.
Merc.
Pont.
Volare
Monarch
Dodge
Firebird
Buick
Olds
Pont.Diplomat
Delta
LeSabre
Catalina
88
Audi 5000 VolvoAMC
260 Pacer Dodge St. Regis
Dodge
Chev.
Magnum
Buick
Impala
Olds
Riviera
Toronado
Merc. Marquis
Buick Electra
Peugeot 604Linc.Cad.
Versailles
Merc.
Eldorado
Merc.Cougar
Cad.
XR-7 Deville
Linc.
Linc.
MarkContinental
V
10

2,000 3,000 4,000 5,000


Weight (lbs.)

Mileage (mpg) Fitted values

graph matrix mpg weight price


2,000 3,000 4,000 5,000
40

30
Mileage
(mpg)
20

10
5,000

4,000
Weight
3,000 (lbs.)

2,000

15,000

Price 10,000

5,000

10 20 30 40 5,000 10,000 15,000

sysuse uslifeexp.dta, clear


line le_male year, saving(male)
line le_female year, saving(female)
gr combine male.gph female.gph
80

80
70

70
Life expectancy, females
Life expectancy, males

60

60
50

50
40

40

1900 1920 1940 1960 1980 2000 1900 1920 1940 1960 1980 2000
Year Year
graph twoway function y=normalden(x), range(-4 4)

.4
.3
.2
y
.1
0

-4 -2 0 2 4
x

Los grficos para evaluar normalidad

webuse lbw.dta
histogram bwt,frequency normal qnorm bwt
5000
40

4000
30

birthweight (grams)
Frequency

3000
20

2000
10

1000
0

1000 2000 3000 4000 5000


birthweight (grams)
RESUMEN
Varios comandos pueden ser especificados con abreviaciones (por ejemplo, todos
describe, des, y de son apropiados para indicar describe), presentndose a
continuacin varios ejemplos. Texto en courier new rojo refiere a un comando a ser
digitado en la ventana de comandos del programa Stata. Texto en courier new rojo itlico
se refiere a informacin a ser digitada que vara con el banco de datos/archivo del
usuario. variable = la variable de inters var# = cada variable de inters.
En la mayora de los casos, hay opciones adicionales que pueden seguir comandos
iniciales para funciones y operaciones ms especficas/detalladas. Slo algunos ejemplos
de lneas de comandos aparecen en este documento.

I. INICIARSE EN STATA
I.1. Uso general
En Stata las letras maysculas y minsculas son interpretadas como letras diferentes.
Usar comillas ... alrededor de informacin string (texto)
Usar == para una ecuacin lgica (if x==1)

I.2. Familiarizarse con la sintaxis de comandos


[by varlist] comando [varlist] [if exp] [in range] [weight] [,options]
varlist hace que Stata repita el comando para cada sub-muestra de los datos para la cual
valores de las variables en varlist sean iguales.
En los ejemplos presentados aqu sustituimos varlist con variable.
Si ninguna variable est incluida, Stata asume _all, para incluir todas las variables
en el banco de datos.
if exp restringe el comando a un rango especfico do comando a los casos para los
cuales la exp (expresin) es verdadera.
in range restringe el comando a un rango especfico de observaciones.
weight indica el tamao en adjunto de cada observacin.
options: muchos comandos tiene opciones adicionales y '[options]' es el mtodo
para visualizar estas opciones por comandos especficos.

I.3. Digitar comandos rpidamente y corregir errores (Windows/Mac Unix)


Para recuperar la lnea del comando anterior: Page Up Ctrl-R
Presionar Page Up (ou Ctrl-R) varias veces para retornar decrecentemente por
las lneas de comandos anteriores.
Para pasar adelante por las lneas de comandos anteriores: Page Down Ctrl-B
Para visualizar una lista de las ltimas 5 lneas de comandos: #review #review
Para visualizar las n lneas de comandos anteriores: #review n # review n
Para visualizar la na lnea de comando: n Ctrl-Home n Ctrl-W

I.4. Editar lneas de comando


Usar las flechas izquierda y derecha para mover el cursor.
Para mover el cursor hasta el inicio de la lnea: Home Ctrl-K
Para mover el cursor hasta el final de la lnea: End Ctrl-P
Para borrar el carcter en la localizacin del cursor: Delete Ctrl-D
Digitando substituir caracteres existentes
Para insertar caracteres al frente del cursor sin sustituir: Insert Ctrl-E
Para regressar al modo de sustitucin: Insert Ctrl-E
Para borrar una lnea y comenzar de nuevo: Esc Ctrl-U
Para cortar la lnea en la localizacin del cursor: Ctrl-End Ctrl-X

I.5. Visualizar y modificar directorio (pwd, cd)


Visualizar en cul directorio Stata est procurando/salvando archivos: pwd (pwd = print
working directory)
Cambiar de directrio: cd (cd = change directory)
Visualizar, en la ventana de resultados, todos los archivos dentro del directorio actual:
dir

I.6. Ejecutar una rutina


Ejecutar un archivo .do: run camiocompleto\nombrearchivo.do
camiocompleto = el camio entero de la carpeta donde el archivo est guardado
nombrearchivo = nombre escogido por el investigador para el archivo
Ejecutar la rutina entera sin paginar por el archivo output entero: set more off
Ejemplo:
set more off
run C:\Desktop\STATEX\correlacion_ingreso2010.do
Ejecutar comando suprimiendo output y procediendo a pesar de los errores: capture
comando
Ejecutar comando y ver output y mensajes de error: capture noisily comando

I.7. Crear y salvar archivo .log


Crear un registro de su trabajo (grabar y salvar los resultados de los comandos
ejecutados)
log using camiocompleto/nombrearchivo.log o
log using camiocompleto/nombrearchivo.log, text replace (text replace
sustituye la versin anterior del log) o
capture log using camiocompleto/nombrearchivo.log
Parar de guardar el resultado (cerrar el log): log close
Para pasar mensajes de error: capture by
Visualizar log entero: view nombrearchivo.log

I.8. Usar operadores: Relacin lgica aritmtica (numrica y string(texto))


+ sumar ~ no - sustraer
* multiplicar / dividir & y | o
< menor que > mayor que >= mayor o igual <= menor o igual
^ elevado a la n potencia == igual != no igual ~= no igual

1.9. Incluir calificadores en expresiones


Caso x sea igual a 1: if x==1
Caso x sea mayor que 5 y menor que 20: if x>5 & x<20
Para indicar que est en las primeras 10 observaciones: in (1/10)
Para realizar una accin por grupos (uno o ms) usar: by o over grupo refiere a una
variable categrica

1.10. Listar variables


Listar x1 hasta x10: x1-x10
Listar todas las variables incluyendo y entre var2 y var6: var2-var6
Ejemplo: genero-altura (genero y altura representan dos variables en el banco de datos)
Listar todas las variables comenzando con popul: popul*
Listar todas las variables: comando _all
Ejecutar comando para todas las variables: comando _all

II. TRABAJAR CON LOS DATOS


II.1. Cargar achivos .dta
Cargar archivo .dta: use camio/nombrearchivo.dta
Limpiar la memoria de Stata, o retirar el banco de datos actual de la memoria (usar
antes de importar un nuevo banco): clear
Trabajar con apenas las primeras 100 observaciones: use
camio/nombrearchivo.dta in=1/100
Trabajar con apenas las observaciones de un valor/categora (i.e. hombres): use
camio/ nombrearchivo.dta if genero==hombre

II.2. Leer un archivo de texto


Importar archivo de texto (delimitado con comas): insheet using
camio/nombrearchivo.txt, comma
Sustituir coma con tab si el archivo es tab-delimitado
Si los nombres de variables no estn incluidos usar: insheet var1 var2 var3
camio/nombrearchivo.txt

II.3. Guardar archivos


Guardar en formato de Stata (.dta): save camio/nombrearchivo.dta o
save camio/nombrearchivo.dta, replace (replace graba la nueva versin sobre
la original)
Guardar en formato texto-delimitado: outsheet _all using
camio/nombrearchivo.txt, comma (puede usar tab en lugar de coma)

II.4. Describir y resumir datos


Visualizar nombres y legendas de variables, y datos del libro de cdigos que describe
el banco de datos: codebook
Listar informacin sobre el libro de cdigos para variables especficos: codebook
variable o codebook ar1 var2 var3
Listar estadsticas univariadas para todos las variables: summarize o sum o su
Listar estadsticas univariadas para variables especficas: su var1 var2 var3
Listar los datos en la memoria: list
Listar todos los valores de var1: list var1
Listar todos los valores de var1 y var2 y somar los valores de var2: list var1 var2, sum
(var2)
Listar casos 1 at 10 de var1: list var1 in 1/10
Se puede ordenar la variable antes de listarla (i.e. ordenar edad y listar los 5 individuos
ms jvenes)
Listar casos 1 hasta 20 de var1, var2 e var3: list var1 var2 var3 in 1/20
Listar cualquier observacin: list in #obs (insertar # la observacin)
Listar todas las variables comenzando con popul: list popul*
Listar casos condicionalmente: list varl if varl>20

II.5. Organizar variables


Ordenar variable: sort variable
Retirar una variable del banco de datos en uso: drop var1 var2 [if][options]
Mantener variables en el banco de datos en uso: keep var1 var2 [if][options]
Las variables no-especificadas sern eliminadas
Ordenar variables: order var5 var2 var8 var10
Las variables listadas aparecern primero en la ventana de variables, en la orden
especificada. Las otras se quedarn en la orden original, despus de las listadas.
Ordenar variables alfabeticamente: aorder var5 var2 var8 (segue la misma lgica
acima)

II.6. Crear leyendas


Crear una leyenda para un banco de datos: label data Leyenda del banco
Crear una leyenda para una variable: label variable nombrevaroriginal
nuevonombrevar
Definir una lista de asociaciones de nmeros enteros y texto llamadas value labels
(leyendas de valores):
label define leyendavalores x leyenda1 y leyenda2 z leyenda3
Anexar una leyenda de valores a una variable: label values variable
Visualizar una lista de nombres de las leyendas de valores almacenadas en la
memoria: label dir
Listar nombres y contenido de leyendas de valores en la memoria o apenas variables
especificadas:
label list o label list leyendavalores leyendavalores2
Generar una copia de una leyenda de valores que existe: label copy
leyendavalores nuevoleyendavalores
Eliminar una legenda: label drop leyendavalores
Salvar leyendas en un archivo .do: label save
Es til para leyendas de valores que no estn asociadas a una variable porque las
leyendas no son salvadas con los datos.

II.7. Adicionar idioma para leyendas


Adicionar leyendas en otro idioma como espaol label language es, new
Retornar al idioma de leyendas patrn: label language, default
Retornar a otro idioma de leyendas (i.e., espaol): label language es

II.8. Copiar y manipular variables


Generar nueva variable basada en una variable existente (ejemplos):
gen x = y/10 o gen x2= x^2 o gen z=(x+y) if var1==1 & var2>100
Renombrar variable= rename var1 nuevonombrevar
Clonar (copiar) variable: clonevar nuevonombrevar = nombrevar
[if][options]
Este comando copia todas las propiedades de la variable original (nombre, tipo de
almacenamiento, valores, leyendas, etc.)
Recodificar valores de variable (crear nuevos cdigos para valores despus de copiar
variable original:
recode var1 (min/5=1) (6/max=2) o recode var1 (.=1) if var2==1 o recode
var1 (1=2) (else=0) o
recode var1 var2 (1 2 = 1 "bajo") (3 = 2 medio) (4 5 = 3 "alto"),
label(nuevoclase)
Sustituir valores: replace variable [if][options] Se puede repetir comando
hasta que todos los valores de inters sean substituidos

II.9. Agregar bancos de datos


Agregar (append) dos bancos semejantes (i.e. bancos con variables idnticas
digitados por personas diferentes):
use banco1
append using banco2 o append using banco2, keep(var1 var 2 var5 var7 var8)
save camio/banco3
Para cualquier variable que no est en ambos los bancos, puntos decimales (.) sern
inseridos para los valores ausentes.

II.10. Unir bancos de datos


Unir (merge) dos bancos diferentes que tienen por lo menos una variable en comn:
use banco1
sort id (id representa la variable en comn por la cual la unin ser basada)
save, replace
clear
use banco2
sort id
merge id using banco1 o merge id using banco1, uniqmaster o merge id using
banco1, uniqusing
save camio/banco3
unique, uniqmaster, y uniqusing especifican que las variables en las cuales la unin ser
basada identifiquen nicamente las observaciones.
uniqmaster identifica nicamente observaciones en el banco que est abierto y no
necesariamente en el banco using
uniqusing identifica nicamente observaciones en el using y no necesariamente en el
banco master
Para la mayora de estas, debe especificar apenas unique. unique igual a especificar
ambos uniqmaster y uniqusing.

II.11. Agrupar variables


Simple:
collapse (sum) var3 var4 var5, by (var1 var2)
La suma de los valores de var3 var4 y var5 ser generada al nivel de var1 y var2.
Ejemplo: collapse (sum) ingresobosque ingresoagric ingresopesca, by (domicilio
ao)
Avanzada:
collapse (count) var2 (sum) var3 (mean) var8 (p50) var9, by (var1)
La cuenta de casos de var2, la soma de valores de var3, el promedio de valores de var8,
y la mediana de valores de var9 sern generadas al nivel de var1.
Ejemplo: collapse (count)productos (sum)ingresobosque (mean)ingresobruto
(p50)ingresoliquido, by (domicilio)

II.12. Realizar operaciones en todas las variables (loop over items)


Usar foreach para aplicar un comando a cada variable listada:
Ejemplo 1:
foreach x of varlist var1 var2 var3 {
recode `x (-99=.)
}
Puede usar tambin: foreach x in var1 var2 var3
Observe las comillas la primera y segunda son caracteres diferentes
Ejemplo 2:
foreach v of varlist var1 var4 var7 var8 var9 {
generate log`v = log(`v)
}
II.13. Trabajar con valores ausentes
Transformar valores ausentes (.) en valores numricos: mvencode variable mv(-
999) [in][if][options]
El nmero entre parntesis puede ser cualquier que no sea un valor vlido para la variable
Transformar valores numricos en valores ausentes (.): mvdecode variable mv(-99)
[in][if][options]
El numero entre parntesis varia para cada banco de datos

II.14. Generar nmeros aleatorios


Crear variable aleatoria que contiene nmeros pseudo-aleatorios uniformamente
distribuidos en el intervalo [0,1)
gen random = runiform()
Crear variable aleatoria que contiene nmeros aleatorios normalmente distribuidos con
promedio 0 y desviacin estndar 1:
gen normal = rnormal()
Otras opciones: rbinomial(n,p) rchi2(df) rpoisson() rt(df) etc.
Caso ningn banco de datos est en la memoria, pueden ser creadas 100
observaciones: set obs 100

BIBLIOGRAFIA
1. Institute for digital research and education UCLA [Internte]. [citado 2014 Abr 17].
Disponible en: http://www.ats.ucla.edu/stat/stata/

2. Carolina Population Center UNC [Internte]. [citado 2014 Abr 17].


Disponible en: http://www.cpc.unc.edu/research/tools/data_analysis/statatutorial/

3. The Stata blog not elsewhere classified [Internte]. [citado 2014 Abr 17].
Disponible en: http://blog.stata.com/

Potrebbero piacerti anche