Está en la página 1de 11

Introduccion a Stata

Clase 1: Funciones Basicas


R. E. De Hoyos*
University of Cambridge

17 de febrero de 2005

1.

Introducci
on

En esta primera sesion, se tocaran los puntos basicos sobre el funcionamiento


de Stata. Iniciaremos la sesion personalizando Stata. Una vez familiarizado
con las ventanas del programa, veremos las diferentes formas de introducir
datos, modificarlos, analizarlos y salvarlos. Finalmente aprenderemos a utilizar los recursos disponibles en la red para responder a nuestras preguntas
y estar al dia sobre los desarrollos de Stata.

2.

Personalizando Stata

El depliegue de Stata presenta cuatro ventas diferentes: Review, Results,


Variables y Commands. En Review aparencen los comandos que han
sido utilizados durante las sesion en turno. Solo los resultados mas recientes
*

red29@cam.ac.uk

son visibles en la pantalla Review, mientras que Command sirve para


utilizar Stata de forma interactiva.1
Al instalar Stata, varios archivos son creados para su uso posterior. El mas
utilizado es el archivo Stata cuya direccion esta indicada en la parte inferior
izquierda de la pantalla; es aqu donde son salvados los datos y resultados si
no se especifica otra ruta. Para visulizar la ruta de todos los archivos creados
por Stata, escriba la palabra sysdir en la barra de comandos.2 La ruta
de estos archivos puede ser modificada utilizando el comando sysdir set
nombre del archivo seguido por la nueva direccion. La ruta del archivo
Stata tambien puede ser modificada escribiendo el comando cd seguido
por la nueva ruta.
Comandos: sysdir

3.

Manejando la Base de Datos

Hay varias formas en que podemos introducir datos en Stata. Una de las
mas comunes es utilizando el comando insheet seguido por la ruta del
archivo, este comando premite a Stata leer archivos en formato ASCII3 que
son com
unmente realizados en Excel (separados por comas o bien por tabuladores). Otros comandos que pueden ser utilzados son: infile1, infile2 e
infix. Tambien es posible introducir datos a mano utilizando el comando
edit, el cual abre una hoja de calculo. Aunque no es muy recomendable, los
datos pueden ser introducidos a Stata cortandolos desde Excel y pegandolos
en la hoja de calculo de Stata.
Si los datos ya estan en formato de Stata (terminacion .dta), estos pueden
1

El tama
no y posicion de las ventanas puede ser ajustado seg
un las preferencias del

usuario y estas pueden ser salvadas utilizando Prefs Save Windowing Preferences.
2
Es importante se
nalar que Stata es sencible al uso de may
usculas, todos los comandos
Stata deben ser escritos utilizando solo min
usculas.
3
American Standard Code for Information Interchange

ser cargados al programa utilizando el comando use seguido por la ruta en


donde se encuentra la base de datos. Por ejemplo:
use C:/Mis Documentos/Stata/Datos1.dta
Comandos: insheet, infile1, infile2, infix, edit, use

3.1.

Asignando Memoria y Tama


no de la Matriz

Stata cuenta con un optimizador de memoria el cual asigna una cantidad


predeterminada de memoria a cada observacion, la cantidad asignada automaticamente es de 10M. El usuario debe incrementar esta cantidad si considera que la base de datos necesita mas recursos utilizando el comando set
memory seguido por la cantidad en mega bytes. Si la memoria asignada es insuficiente dado el tama
no de la base de datos, Stata emitira el siguiente error:
no room to add more observations. Una ves que los datos han sido
cargados, estos se pueden comprimir usando compress, un comando muy u
til
cuando se manejan varias bases de datos grandes.
Otro valor que debe ser asignado de acuerdo al tama
no de la base de datos y
el tipo de analisis que se pretende realizar con ella, es el tama
no de la matriz.
El valor asignado por Stata (en su edicion especial) es de 400 variables, este
puede ser incrementado hasta 11,000 en el caso de la edicion especial (800 en
la version mas peque
na de Stata) usando el comando set matsize.
Comandos: memory, compress, matsize

3.2.

Leyendo los Datos

Stata almacena las varaibles asignandoles diferentes formatos dependiendo


del tipo de informacion de sus observaciones. Para obtener esta y otra informacion como n
umero de variables u observaciones use el comando describe.

Para ver las observaciones en pantalla, se puede utilizar edit o bien list
seguido por el nombre de la variable o variables que se deseen visualizar.
La diferencia entre edit y list es que el primero despliega toda la hoja
de calculo mientras el segundo despliega los datos en la ventana de resultados.
Comandos: describe, edit, list

3.3.

Guardando los datos

Para guardar los datos use el comando save seguido por la ruta en donde se
quieren salvar. Para borrar una base de datos no deseada utilice el comando
erase seguido por la ruta. El comando clear descarga los datos de la memoria temporal de Stata; notese que al utilizar clear no se realizara ninguna
advertencia antes de descargar los datos y si la base de datos original ha sido
modificada sin ser salvada estos cambios se perderan.
Comandos: save, erase, clear

4.

Modificando la Base de Datos

Una vez cargada la base de datos, es muy com


un modificarla para crear
nuevas variables o bien cambiar el orden o contenido de las mismas. Los
siguientes comandos son muy u
tiles para estas tareas:
label Este comando sirve para a
nadir etiquetas tanto a variables (label
variable) como a bases de datos (label data).
order, move y aorder Estos comandos cambian el orden en que se encuentran las variables. order seguido por lista de var cambia el orden seg
un
sea especificado por la lista de variables. move var1 var2 en cambio,
sustituye la variable1 en la posicion de la variable2. aorder acomoda
las varibles en orden alfabetico.
4

sort Ordena de forma acendente las observaciones basado en una o mas


variables.
generate Genera una nueva variable definida en base a una expresi
on numerica la cual puede contener otras variables. Por su flexibilidad, este es uno
de los comandos mas importantes de Stata, ya que se pueden utilizar
un gran n
umero de operaciones logicas, aritmeticas y matematicas para
definir expresi
on. En el siguiente cuadro tratamos de resumir las expresiones mas utilizadas con generate.

Cuadro 1: Expresiones usadas por generate


Expresiones Logicas Significado
&, |

Y (AND), O (OR)

>, <

Mayor que, Menor que

==, ! =

Igual a, Diferente a

>=, <=

Mayor o Igual, Menor o Igual

Expresiones Aritmeticas
+,

Mas, Menos

, /

Multiplicacion, Division

n, N

N
umero de observacion corriente, N
umero de
observaciones totales

Algunas funciones Matematicas


abs()

Valor absoluto

cond(x; y; z)

si x es igual a 0, entonces y.., de otra forma z..

exp()

funcion exponencial

round(x; y)

redondea x en unidades de y; round(.,1) rodondea a


la integral mas cercana.

log()

logaritmo natural

min(x1; x2; : : :)

el mnimo de x1; : : : ; xn

max(x1; x2; : : :)

el maximo de x1; : : : ; xn

sqrt()

raiz cuadrada

sum()

La suma para la expresion entre parentesis.

uniform()

Genera n
umeros aleatoreos entre 0 y 1 con
una distribucion uniforme.

See: help functions

egen Es una extencion de generate que contiene una gran cantidad de funciones pre-establecidas con las que se pueden generar nuevas variables.
replace Cambia el contenido de una variable ya existente sustituyendola
por una expresi
on.
6

encode Cuando una variable esta en formato string (es decir no-numerico) no
se pueden obtener estadsticas sobre ella. encode y su opuesto decode
cambian el formato de una variable string a numerico y viceversa. Aletenativamente podemos utilizar los comandos tostring y destring los
cuales realizan las mismas funciones pero con mas opciones.
reshape wide, long Este comando transforma la base de datos de una formato ancho (wide) a uno largo (long) y viceversa. reshape puede transformar de una base de datos como la siguiente en formato ancho:
Cuadro 2: Datos en formato wide
Xij
id sexo

ing80

ing81

ing82

5000

5500

6000

2000

2200

3300

3000

2000

1000

A uno largo como este:


Cuadro 3: Datos en formato long
i

Xij

id

a
no sexo

Ing

80

5500

81

5500

82

6000

80

2000

81

2200

82

3300

80

3000

81

2000

82

1000

keep Seguido por una lista de variables mantiene las variables especificadas
eliminando las no incluidas en la lista. Analogamente el comando drop
elimina las variables que le siguen al comando conservando las noincluidas.

5.

Combinando Bases de Datos

Muchas veces es necesario combinar dos o mas bases de datos para formar
una sola. Para ello se pueden utilizar los comandos merge o append. merge
une dos bases de datos utilizando una variable en com
un. Las dos bases de
datos deben estar en formato .dta (Stata) y las observaciones deben estar
ordenas (utilizando sort) de acuerdo a la variable que sirve como referencia.
El objetivo de merge es anexar variables no observaciones. Por ejemplo:

use ds2
sort recid
save ds2, replace
use ds1
sort recid
merge recid using ds2

Lo que este peque


no codigo nos dice es que carguemos la base de datos ds2
(use) y la ordenemos de acuerdo al identificador recid (sort) y guardemos los
cambios reeplasando ds2 (save). Posteriormente abrimos la segunda base de
datos utilizando el comando use, la ordenemos en base a recid y finalmente
la pegamos (merge) de acuerdo a recid utilizando la base de datos ds2.
En el caso de append sucede lo contrario, lo que se busca es anexar observaciones
por lo generala una misma serie de variables. La sintaxis es mucho mas

sencilla pues solo se tiene que nombrar la base da datos que se desea anexar.
Por ejemplo:
append using ndatos
Por u
ltimo, si se desea contruir una nueva base de datos que contenga informacion condensada de la base original, esto se puede hacer utilizando el
comando collapse. Supanga que tiene una base de datos sobre hogares y que
cada hogar tiene una observacion para cada miembro que lo integra. Si cada
hogar dispone de un identificador u
nico, entonces se puede formar una base
de datos alternativa que contenga una sola observacion por hogar (en lugar
de una observacion por individuo) para cada una de las variables deseadas.
Esta observacion puede contener la media, la desviacion estandar, la suma u
otro estadstico por hogar. Por ejemplo:
collapse (mean) edad educacion ingreso, by(hogar)
El codigo anterior crea una base de datos con cuatro variables (hogar, edad,
educacion e ingreso) con una observacion por hogar, la cual contiene el promedio de cada variable por hogar.
Comandos: merge, append, collapse

6.

Sintaxis y Obteniendo Ayuda

Como lo podemos ver en los ejemplos anteriores, la sintaxis de los comandos


Stata tienen un formato com
un. Esta sintaxis es la siguiente:
[by lista de var :] comando lista de var [if expresi
on] [in rango]
[ponderadores] [using nombre del archivo], [opciones]
Sin embargo para la moyor parte del curso solo necesitaremos una version
mucho mas simple como:
[by lista de var :] comandolista de var [if expresi
on], [opciones]

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


subgrupos definidos 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. A lo largo del tutorial se utilizara esta sintaxis de forma
continua de manera que al final del curso el participante estara familiarizado
con ella.
Vea: help language
Otra informacion clave es la forma en que podemos obtener ayuda. Todos
los comandos Stata tienen informacion acerca de la manera en que deben
utilizarce (sintaxis y opciones); para acceder a ella es solo cuestion 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 documentacion tanto interna como aquella que se encuetra en la pagina red de
Stata. Adicionalmente, existen paginas de internet con materiales didacticos,
estos son algunas de las mas importantes:
http://www.stata.com/support/
http://www.stata.com/support/faqs/
http://www.ats.ucla.edu/stat/stata/sk/
http://www.ats.ucla.edu/stat/stata/
http://ideas.repec.org/s/boc/bocode.html
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

10

query le indicara si es necesario hacer actulizaciones.4

7.

Resumen

En esta primera sesion aprendimos los puntos mas basicos del funcionamiento de Stata incluyendo la importacion, tranformacion y el manejo de bases
de datos. Otros puntos clave consistieron en el procedimiento para cargar las
bases de datos en formatos diferentes a Stata, as como asignar la suficiente
memoria y tama
no de matriz para cargar los datos y llevar al cabo el analisis. La combinacion de bases de datos y la generacion de nuevas variables
utilizando las expresiones del comando generate fueron entre las tareas mas
importantes de la sesion.

Para hacer las actualizaciones es necesario que su computadora este conactada a la

red; si su conexion utiliza un proxy, tiene que configurar Stata, vea help netio.

11

También podría gustarte