Sunteți pe pagina 1din 39

Introduccin a Stata

Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Introduccin a Stata

Javier Alejo

Econometra I
Universidad Nacional de La Plata
Marzo, 2015

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Contenido

Introduccin a Stata
Interface
Sintaxis
Comandos bsicos
Abreviaturas

Organizacin de un proyecto en archivos DO y LOG


Gestin de base de datos (dataset)
Tipo de datos y conversin de tipos
Importacin y exportacin de datos

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Qu es Stata?

Stata es un sistema que permite la gestin de base de datos y


la realizacin de clculos estadsticos y economtricos.
La gran ventaja de Stata es que se basa en un lenguaje de
programacin que respeta una sintaxis.
Quienes sepan principios de programacin podrn asimilar a
Stata como un sistema de programacin de alto nivel con
algunos aspectos similares a Pascal, C, o Basic.
Existen versiones de Stata para Windows, Linux y Mac.

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Dnde se aprende?

En este curso: solo lo necesario para Econometra I.


Stata ofrece varias alternativas:
Para una primera aproximacin es suciente con el User's
Guide.
Manuales detallados por comandos.
Stata Press: libros sobre temas especicos (estadstica,
econometra, demografa, etc.)
Stata Journal: articulos sobre nuevos mtodos, comandos y
otros tpicos de programacin.

En la web: blogs, videos tutoriales, etc.

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Interface

La interface de Stata comprende el entorno de trabajo. En una


primera aproximacin se trabajar con la interface de ventanas,
para ms adelante experimentar con la interface mediante
archivos do y log.
Las diferentes ventanas que conforman la interface son:
Review: muestra el historial de comandos recientemente
utilizados.
Variables: expone las variables que comprenden el dataset
actualmente en memoria.
Stata Results: Muestra los resultados obtenidos de la
aplicacin de los comandos.
Stata comand: es para introducir comandos mediante el
teclado.

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Sintaxis y comandos bsicos

Stata trabaja mediante la especicacin por parte del usuario


de rdenes que se denominan comandos.
Los comandos conforman un lenguaje de comunicacin con el
programa, por lo que existe una determinada sintaxis que tiene
la siguiente estructura general:

[by varlist:] comando [varlist] [=exp] [if exp] [in range] [, opciones]
Los corchetes indican elementos opcionales. De hecho existen
comandos que comprenden slo una palabra.
Veremos diferentes ejemplos de comandos simples que usan
distintas partes de la estructura de la sintaxis

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Bases de datos (dataset)

Utilizaremos un dataset de ejemplo denominado basewdi.dta


(obtener del material de clases en el sitio web, y guardar en
C:\clase1).

Este dataset contiene datos extraidos de la World Development


Indicators para 27 pases para los aos 2000 y 2005.
El comando para cargar el dataset en la memoria de Stata es:

use C:\clase1\basewdi.dta
Requisitos:
No debe haber un dataset previo en memoria.
Previamente habr que decirle a Stata en que carpeta se est
trabajando (comando cd C:\clase1).

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

comando

Si la carga del dataset fue exitosa, veremos que las ventanas


Review, Variables y Stata Results se modicaron.
Un ejemplo de comando que funciona sin solo invocando su
nombre es el comando browse, que muestra toda la base de
datos:

browse
Otro caso es el comando summarize, que muestra estadisticas
descriptivas:

summarize

Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[varlist]
Se utiliza para hacer referenca a una o ms variables. Por
ejemplo, estadsticas descriptivas de una variable:

summarize pob
Para un grupo de variables:

summarize pob pbi expo


Lista de variables (en este caso todas las variables que estn
entre pob y impo)

summarize pob-impo
Variables que empiecen con la letra p

summarize p*
Javier Alejo

Econometra I

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[if exp]

Se utiliza cuando se quiere restringir la aplicacin del comando


a observaciones que cumplen con ciertas restricciones.
Para ello se utiliza el si condicional (if en ingls).
Por ejemplo: descripcin estadstica de la variable pbi de
aquellos pases cuya poblacin es mayor a 250 mil habitantes.

summarize pbi if pob > 250000


Operadores de comparacin:

Igual: ==
Distinto: !=
Mayor (menor): > ; (<)
Mayor o igual (menor o igual);
Javier Alejo

>= (<=)

Econometra I

10

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Operadores lgicos:

And:
Or: |

&

Operador jerrquico: el parntesis que determina el orden de


aplicacin de las sentencias condicionales.
Algunos ejemplos ms complejos de sentencias condicionales
son los siguientes:

summarize
summarize
summarize
summarize

pbi
pbi
pbi
pbi

if
if
if
if

(pob > 250000) & (consumo < 6000)


(pob > 250000 & consumo < 6000) | anio==2000
(pob > 250000) & (consumo < 6000 | anio==2000)
!(pob > 250000) & (consumo < 6000 | anio==2000)

Javier Alejo

Econometra I

11

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[in range]
Permite aplicar el comando a un rango de observaciones, de
acuerdo al orden del dataset.
Ejemplo 1: descripcin estadstica de las 10 primeras
observaciones del dataset

summarize pbi in 1/10


Ejemplo 2: aplicar el comando a las observaciones entre la 5ta
y la 12da.

summarize pbi in 5/12


Ejemplo 3: aplicar el comando a las ltimas 10 observaciones.

summarize pbi in -10/-1


Javier Alejo

Econometra I

12

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

El componente [in range] depende del ordenamiento del


dataset.
Los comandos para ordenar un dataset son sort y gsort.
El comando sort permite ordenar slo de manera ascendente
de acuerdo a la variable que se especica:

sort pob
El comando gsort permite ordenar en cualquier sentido.
De manera descendente segn la poblacin de cada pas:

gsort -pob
De manera ascendente:

gsort +pob
Javier Alejo

Econometra I

13

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[= exp]

Se utiliza generalmente con slo dos comandos: generate y


replace.

generate nueva = 0
Permite crear una nueva variable en el dataset. Es requisito
indicar la denicin de dicha variable nueva.
En este caso la variable se llama nueva y tiene valor 0 en todas
las observaciones.
Tambin puede crearse una variable nueva mediante
operaciones algebraicas basadas en otras variables.

Javier Alejo

Econometra I

14

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Ejemplo 1: crear la variable que se llame pob2 que contiene la


poblacin en millones

generate pob2 = pob/1000000


Ejemplo 2: crear una variable que contenga el PBI per cpita

generate pbipc = pbi/pob2


Ejemplo 3: crear una variable con el saldo de la Cuenta
Corriente

generate ctacte = expo - impo


Ejemplo 4: crear una variable con que contenga el ndice de
apertura

generate apertura = 100 * (expo + impo ) / pbi


Javier Alejo

Econometra I

15

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Para poder vericar los valores de price y price2 puede


aplicarse el comando browse:

browse pob pob2


O alternativamente

browse p*
Tambin puede crearse una variable con valores nulos (en
Stata se indica .).

generate nulo = .
Otro comando que usa [=exp] es replace que permite
reemplazar valores de una variable ya creada.

replace pob2 = 0 if pob < 250000


Javier Alejo

Econometra I

16

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[by varlist:]

Permite sistematizar la aplicacin del comando por grupos de


observaciones.
Los grupos estn denidos por los distintos valores de la
variable indicada en varlist.
Es requisito ordenar el dataset por la variable que se va a usar
en el [by varlist:]

sort region
Luego:

by region: summarize apertura

Javier Alejo

Econometra I

17

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

bysort

Lo mismo se podra haber obtenido haciendo:

summarize apertura if region=="America central"


summarize apertura if region=="America del norte"
summarize apertura if region=="America del sur"
pero debe notarse que este segundo mtodo es muy engorroso si la
variable que agrupa los datos tiene ms de dos opciones.
Una opcin que permite la misma funcionalidad pero en una
sola linea de cdigo es bysort:

bysort region: summarize apertura


Con esto no es necesario ordenar previamente al dataset por la
variable deseada.
Javier Alejo

Econometra I

18

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

[, opciones]

Existen comandos que aceptan opciones adicionales.


stas son especicadas en la sintaxis luego de una coma.
Por ejemplo: resumen estadstico ms detallado

summarize pbipc, detail


De esta manera, el comando summarize ahora brinda una
descripcin estadstica distinta de la que hace por defecto.

Javier Alejo

Econometra I

19

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Otros comandos bsicos


Para tabular cantidades de observaciones segn distintos
valores de una variable, tenemos el comando tabulate.
Por ejemplo:

tabulate region
Permite conocer cuantas observaciones hay con los diferentes
valores que tiene la variable region.
Este comando tabulate puede ser combinado con el
summarize, de la siguiente manera:

tabulate region, summarize(apertura)


De esta manera se obtiene la media, el desvo estndar y la
frecuencia, segn los distintos valores de la variable region.
Javier Alejo

Econometra I

20

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Tambin puede usarse tabulate con dos variables.

tabulate region anio


Permite conocer cuantas observaciones hay con las diferentes
combinaciones de valores entre las variables pais y region.
Obviamente, cualquiera de estos comandos acepta la
introduccin de condiciones lgicas, como por ejemplo:

tabulate pais anio if expo==.

Javier Alejo

Econometra I

21

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

El comando tabstat es ms avanzado para obtener la


descripcin estadstica de variables.
El uso es el siguiente:

tabstat pbipc if anio==2005, statistics(mean)


Obtenemos la media de la variable price
Pero tambin podemos obtener muchos otros estadsticos
descriptivos, como por ejemplo

tabstat pbipc if anio==2005, statistics(mean sum count max min range)


. . . y de ms de una variable

tabstat pbipc apertura if anio==2005, statistics(mean sum max min range)

Javier Alejo

Econometra I

22

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Abreviaturas

Todos los comandos y variables usados pueden ser abreviados.


La regla es que la abreviatura puede realizarse siempre que no
se confunda con otro comando.
Existen algunas excepciones a esta regla:
Los comandos destructivos no se abrevian: drop, clear
Existe el comando describe que se abrevia con d, a pesar de
confundirse con otros (es un comando muy utilizado).

Ejemplos de abreviatura:

tab reg, sum(ape)

Javier Alejo

Econometra I

23

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Archivos DO y LOG

Hasta ahora la interaccin con Stata ha sido mediante el tipeo


de comandos en la ventana Stata commands.
Archivo DO (do-le): son archivos de texto que contienen
una secuencia de comandos.
Al ejecutar dicha secuancia, los resultados sern visualizados
en Stata, pero no guardados.
Una forma de guardar esos resultados es utilizando un archivo
LOG.
Archivos LOG (log-le): son archivos de texto en donde se
almacena una copia de todo lo visualizado en la ventana
Results de Stata.

Javier Alejo

Econometra I

24

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Proyecto

Est compuesto por todos todos los archivos que intervienen


en nuestra interaccin con Stata.
En resumen, un proyecto simple contiene los siguientes
archivos:

Archivo

Qu hace?

dta

contiene los datos necesarios

do

ejecuta una secuencia de comandos

log

guarda los resultados

Esta estructura de proyecto resulta muy util para la reslucin


de gran parte de los TPs.

Javier Alejo

Econometra I

25

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Archivos DO

Un archivo DO es de tipo texto plano (sin formatos).


La idea central es que contenga una secuencia de comando
que nos permita obtener ciertos resultados.
Para la creacin de un DO-FILE tenemos dos alternativas:
1

Editor de textos que tiene incluido Stata.

Editor de textos externo.

Editor de textos incluido en Stata

Se puede abrir desde el Men mediante el siguiente comando:

doedit

Javier Alejo

Econometra I

26

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Editor de textos externo

Hay varias opciones disponibles:

http://www.editplus.com/
http://www.textpad.com/
Crimson: http://www.crimsoneditor.com/
Notepad++: http://notepad-plus-plus.org/
Editplus:

Textpad:

Cada uno requiere instalar un archivo para que reconozca la


sintaxis de Stata.
Para este curso con el editor de Stata es suciente.
Para grandes proyectos los editores externos son ms ltiles.

Javier Alejo

Econometra I

27

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Mi primer archivo DO

Utilizando el dataset auto.dta escribiremos nuestro primer


archivo DO mediante el editor de textos. Para ello realizamos
las siguientes acciones:
Copiamos en C:\clase1 el archivo basewdi.dta. Esta ser
nuestra carpeta de trabajo.
En Stata command ejecutamos cd C:\clase1, de esta manera
Stata buscar archivos en esa carpeta.
En el editor de Stata escribimos

use basewdi.dta, clear


describe
summarize pbi expo impo
exit

Javier Alejo

Econometra I

28

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Guardamos el archivo con el nombre wdi.do en la carpeta


C:\clase1

En Stata command ejecutamos do-le wdi. Hay dos maneras:


1

Utilizando el botn Execute (do)

Mediante el comando do, escribiendo en la ventana de


comandos: do wdi.do

Si todo funcion bien, habremos ejecutado nuestro primer


archivo DO y en la ventana Stata Result est el resultado de
los comandos describe y summarize.
Nota: pueden incorporarse comentarios dentro del archivo DO
de la siguiente manera: /* Este es un comentario */. Tambin
es un comentario una lnea iniciado con asterisco *

Javier Alejo

Econometra I

29

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Mi primer archivo LOG

Los resultados que se registran en la ventana Stata result


pueden ser almacenados en un archivo de texto de extensin
.log El cdigo a agregar para obtener un archivo LOG es el
siguiente:

use basewdi.dta, clear


capture log close
log using wdi.log, text replace
describe
summarize pbi expo impo
log close
exit

Javier Alejo

Econometra I

30

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Funcionamiento:
log using hace que se empiecen a registrar los resultados en el

archivo wdi.log mientras que log close los cierra.


replace implica que en cada nueva ejecucin del programa los

resultados se sobrescriben.
Solo queda registrado son los resultados entre el log using y el
siguiente log close.
Importante:
El comando log using resulta en un error si ya existe un LOG
en uso.
Por ello debemos cerrar cualquier otro LOG en uso con la
opcin log close.

Javier Alejo

Econometra I

31

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Sugerencia:
Primero confeccionar el archivo DO sin usar los comandos
LOG.
Luego, cuando ya estemos seguros que el DO hace lo que
necesitamos, usar los comandos LOG para guardar los
resultados.
Comentarios:
Existen otras formas de exportar resultados (en forma de
tablas, texto y grcos).
El archivo LOG es una de las ms primitivas pero la ms
simple (y por lo tanto til para principiantes).

Javier Alejo

Econometra I

32

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Estructura del dataset


El contenedor de datos en Stata se denomina DATASET.
Es una tabla de doble entrada donde las columnas se
denominan variables y las las observaciones.

Observacin

Variable1

Variable2

Variable3

Dato 1,1

Dato 2,1

Dato 3,1

Dato 1,2

Dato 2,2

Dato 3,2

...

...

...

...

Dato 1,N

Dato 2,N

Dato 3,N

En cada celda se pueden guardar datos de diferentes tipos.


El comando count reporta el total de observaciones:

count
Javier Alejo

Econometra I

33

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Tipos de datos
Tipos de datos en Stata: (i) nmeros, (ii) palabras y (iii)
fechas.
Datos numricos: admite varios formatos

Nombre

Tipo de nmeros

Lmite inferior

Byte

Enteros

-127

Lmite superior

100

Integer

Enteros

-32,767

32,740

Long

Enteros

-2,147,483,647

2,147,483,620

Float

Con decimales

-1.70141173319*10^38

1.70141173319*10^38

Double

Con decimales

-8.9884656743*10^307

8.9884656743*10^307

Datos en palabras: se pueden almacenar palabras con hasta un


mximo de 2045 caracteres.
Fechas: son nmeros con un formato especial de visualizacin.
Javier Alejo

Econometra I

34

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Para conocer el tipo de datos de todas las variables que


componen el dataset se utiliza:

describe
Si se quiere saber el tipo de dato de una variable especca se
utiliza:

describe pob
Para crear una variable numrica especicando el tiadpo de
dato que queremos, se utiliza:

generate byte cantidad = 0


generate float descuento = 0

Javier Alejo

Econometra I

35

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Para crear una variable que contenga palabras se utiliza el


siguiente comando:

generate str8 zona = ""


El lmite mximo es de 2045 caracteres en Stata 13 MP.
En este caso, la variable de tipo string especica la cantidad
mxima de caracteres a almacenar.
replace zona = "Mercosur" if pais=="arg" | pais=="bra" | pais=="par" | pais=="ury" | pais=="ven"

Posible contenido de un string:

Datos identicatorios:

esta informacin no puede ser utilizada

directamente en el anlisis estadstico.

Valores no categricos:

se trata de variables con nmeros en

formato string. Para esto es util el comando destring.


Javier Alejo

Econometra I

36

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Importacin de datos

Stata puede importar datos con otros formatos que no son los
de Stata.
Para Stata 12 o ms antuguas, el comando que permite esto
es insheet.
Los formates genricos usualmente tienen estas extensiones:
1

txt: son archivos de texto plano. Por lo general usa


tabulaciones como separador de variables.

csv: similares a los anteriores pero el separador de variables es


un punto y com (;).

Un ejemplo del primer caso sera:

insheet using dataset1.txt, clear tab

Javier Alejo

Econometra I

37

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Importacin de datos

Del segundo:

insheet using dataset2.csv, clear comma


A partir de Stata 13 el comando genrico para esta tarea es
import.

Por ejemplo, en el caso delimitado por comas:

import delimited using dataset2.csv, clear


Pero tambn permite importar archivos Excel:

import excel using dataset3.xlsx, clear

Javier Alejo

Econometra I

38

Introduccin a Stata
Sintaxis
Organizacin de un proyecto en Stata
Gestin de datos (dataset)

Exportacin del dataset

El dataset que est en memoria en Stata puede ser exportado


a un archivo txt, csv o de Excel.
En Stata 12 (o anteriores), el comando para realizar esta tarea
es el siguiente:

outsheet using archivo1., replace


En Stata 13 se usa el comando export:

export delimited archivo2, replace


Y en el caso de exportar a un Excel:

export excel using archivo3.xslx, replace


Javier Alejo

Econometra I

39

S-ar putea să vă placă și