Você está na página 1de 196

Stata 10.

0 para economistas
Humberto Ortiz Ruiz

Curso de STATA 10.01

Índice

1. Introducción al Stata 10.0 ........................................................................................................ 3


1.1. El entorno de Stata 10.0 .............................................................................................. 3
1.1.1. Menú de comandos ................................................................................................... 4
1.1.2. La barra de herramientas........................................................................................... 6
1.2. Novedades de Stata 10.0 ................................................................................................. 6
1.3. Manejo básico de bases de datos..................................................................................... 7
1.3.1. Memoria y bases de datos ......................................................................................... 7
1.3.2. Manejo de directorios................................................................................................. 8
1.3.3. Guardar una sesión de Stata ..................................................................................... 9
1.3.4. Abrir y guardar una base de datos. .......................................................................... 10
1.3.5. Transformación de variables.................................................................................... 20
1.3.6. Muestras.................................................................................................................. 28
1.3.7. Agregando etiquetas a los datos.............................................................................. 28
1.4. Gráficos .......................................................................................................................... 31
1.5. El do-file ......................................................................................................................... 50
1.6. Uso del menu Help ......................................................................................................... 51
1.7. Uso del Stat\transfer ....................................................................................................... 52
1.8. Ejemplo de sesión en Stata 10 ....................................................................................... 55
2. Introducción a la programación: algunas herramientas y comandos útiles ............................ 71
2.1. Macros local y global ................................................................................................. 71
2.2. Enlazando variables: forvalues y foreach................................................................... 72
2.3. Escalares y matrices.................................................................................................. 73
2.4. Comandos return y ereturn ........................................................................................ 74
3. Modelo de regresión lineal clásico......................................................................................... 76
3.1. Introducción ............................................................................................................... 76
3.2. Aplicación .................................................................................................................. 81
3.3. Colinealidad y análisis VIF ......................................................................................... 85
3.4. Pruebas de hipótesis ................................................................................................. 86
3.5. Predicción .................................................................................................................. 88
3.6. Efectos marginales .................................................................................................... 92
3.7. Especificación de la forma funcional .......................................................................... 94
3.8. Perturbaciones no esféricas..................................................................................... 102
3.9. Variables instrumentales.......................................................................................... 109
4. Introducción al análisis de bases de datos con maestreo aleatorio complejo ...................... 117
4.1. Algunos comandos útiles en el manejo de bases de datos ...................................... 117
4.2. Análisis de bases de datos con diseño muestral complejo....................................... 122
5. Modelos para variables categóricas y limitadas................................................................... 135
5.1. Introducción.................................................................................................................. 135
5.1.1. Modelo de probabilidad lineal ................................................................................ 136
5.2. Modelos binarios: logit y probit ..................................................................................... 137
5.2.1. Modelo de la variable latente ................................................................................. 137
5.2.2. Estimación ............................................................................................................. 138
5.2.3. Esperanza condicional........................................................................................... 138

1
El capítulo 1 está basado en el material elaborado por Milenka Moshela “Stata 9.0 para economistas”.

1
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.2.4. Modelos Logit y Probit ........................................................................................... 139


5.2.5. Interpretación......................................................................................................... 139
5.2.6. Pruebas de hipótesis ............................................................................................. 140
5.2.7. Medidas de ajuste.................................................................................................. 141
5.2.8. Aplicación .............................................................................................................. 142
5.3. Modelos ordenados ...................................................................................................... 152
5.3.1. Modelo latente ....................................................................................................... 152
5.3.2. Estimación ............................................................................................................. 152
5.3.3. Interpretación......................................................................................................... 153
5.3.4. Pruebas de hipótesis ............................................................................................. 154
5.3.5. Aplicación .............................................................................................................. 155
5.4. Modelo logit multinomial ............................................................................................... 160
5.5. Modelos para datos censurados y truncados................................................................ 166
5.5.1. Modelo Tobit .......................................................................................................... 166
5.5.2. Sesgo de selección................................................................................................ 171
6. Modelos para datos de panel .............................................................................................. 177
6.1. Modelos para datos en panel estático .......................................................................... 177
6.1.1. Modelo de Efectos Fijos......................................................................................... 178
6.1.2. Modelo de Efectos Aleatorios ................................................................................ 181
6.1.3. Aplicación .............................................................................................................. 182
6.2. Panel Data Dinámico .................................................................................................... 189
6.2.1. Estimador Arellano Bond ....................................................................................... 189
6.2.2. Aplicación .............................................................................................................. 193

2
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1. Introducción al Stata 10.0

1.1. El entorno de Stata 10.0

El despliegue de Stata presenta cuatro ventanas diferentes:

Review Aquí aparecen los comandos que han sido utilizados durante la
sesión. Solo los resultados más recientes son visibles en esta
pantalla.
Command Sirve para utilizar Stata de forma interactiva, es decir se emplea
para crear las líneas de comandos y llevar a cabo las aplicaciones
disponibles en el software.
Variables Nos informa sobre las variables que están disponibles en nuestra
base de datos para realizar las diversas aplicaciones
Results Esta nos permite visualizar los resultados (outputs) de los
estadísticos que pedimos calcular o de los modelos que
solicitamos estimar.

El tamaño y posición de las ventanas puede ser ajustado según las preferencias del usuario y las
cuales pueden ser guardadas utilizando Prefs \Save Windowing Preferences.
También podemos modificar el color de fondo o las fuentes de la ventana Stata Results eligiendo
la siguiente opción del menú principal: Prefs \General Preferences
Otras ventanas importantes son:

Stata Editor permite navegar y modificar los datos como si fuese una hoja de Excel.
Stata Viewer permite acceder a información en línea y también a la ayuda del
programa.

3
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Stata Graphs presenta el último gráfico realizado.


Stata Do-file Editor es una ventana separada en Windows y funciona como un editor de textos
que permite ejecutar una lista de comandos.
Stata Browser permite visualizar los datos, mas no modificarlos.

Nota : Si alguna ventana esta cerrada podemos abrirla desde el menú Window.

1.1.1. Menú de comandos

Dese la versión 8 del Stata, todos los comandos (excepto los de programación) han sido
implementados con cuadros de diálogo y se pueden acceder a ellos desde el menú principal, el
cual está organizado por tópicos:

Seleccionamos una opción desde los menús Data, Graphics o Statistics y llenamos la caja o
cuadro de diálogo correspondiente:

Por ejemplo, para acceder al cuadro de diálogo siguiente, utilizamos la ruta que presentamos a
continuación, la cual se encuentra en los menús desplegables:

Statistics/Linear Regression and Related/ Linear regression

4
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Esta forma de trabajar con el programa de manera interactiva es lo que Stata llama GUI
(Graphic User Interface), lo cual es una mejora de la versión 8 respecto de las anteriores. Si
bien desde la versión 8 el Stata permite trabajar de manera interactiva, sigue siendo un
programa manejado por comandos (al igual que RATS 6), debido a que cada ventana se
encuentra asociada a un comando (a diferencia de Eviews 5.0, en donde las ventanas
desplegables están orientadas a objetos), por lo que aprender a manejar Stata 10 mediante
comandos será de mucha utilidad, sobre todo si lo que se desea es programar en este lenguaje.

5
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.1.2. La barra de herramientas

Además, Stata presenta una barra de herramientas que permite realizar operaciones usuales
como abrir un archivo, grabarlo, imprimir o ver alguna ventana en particular. En la versión 10.0
se ha modificado ligeramente la barra de herramientas con respecto a la versión 9.

Sirve para abrir una base de datos de Stata (*.dta)

Sirve para grabar en disco la base de datos que está siendo utilizada.

Imprime los gráficos o el contenido de la ventana Stata Viewer.

Inicia, cierra, suspende o resume un log (que se guarda bajo la extensión *.smcl o *.log). El
log es un comando que nos permite guardar seciones de Stata.

Muestra una ventana Stata Viewer. Permite mostrar distints ventanas Viewer de forma
simultánea.

Icono que indica la creación de un gráfico o la apertura del editor de gráficos.

Abre un nuevo Do-File Editor o muestra la ventana de Do-File Editor que esté oculta
(equivale a ctrl+8).

Abre Stata Editor o muestra la ventana de Stata Editor que esté oculta (equivale a edit).

Abre Stata Browser o muestra la ventana de Stata Browser que esté oculta (equivale a
browse).

Le dice a Stata que continúe la ejecución de un comando que ha sido detenido.

Detiene Stata (equivale a la tecla q).

1.2. Novedades de Stata 10.0

Entre las aplicaciones y modificaciones realizadas en Stata 10.0 con respecto a la versión 9.0
cabe resaltar:

- Modificaciones y rediseño de las ventanas Review, Variables, Viewer y Graph.


- Posibilidad de abrir múltiples do-files de manera simultánea.
- Editor de Gráficos. El editor permite, de manera más sencila, añadir textos, lineas, títulos
fuera del área de gráfico y mover ejes, títulos, leyendas, cambiar de colores, tamaños,
cambiar tipos de gráficos (por ejemplo de ploteos a lineas o barras), entre otros.

6
Stata 10.0 para economistas
Humberto Ortiz Ruiz

- Se incluyen más estimadores para modelos de datos de panel dinámico. Se incluye


Arellano-Bover/Blundell-Bond system que es una extensión del estimador GMM
Arellano-Bond para paneles dinámicos.
- Se cuenta con nuevos estimadores para modelos con variables categóricas y ordenadas
como asclogit y asroprobit.
- Se ha ampliado el número de modelos y estadísticos que consideran la estructura de los
datos con muestreo aleatorio complejo.

1.3. Manejo básico de bases de datos

1.3.1. Memoria y bases de datos

Las bases de datos pueden variar de tamaño. Por defecto Stata únicamente lee archivos hasta
de 10mb (máximo espacio de los datos) de hasta 5000 variables. Si se intenta leer un archivo
más grande sale el siguiente mensaje de error.

no room to add more observations


r(901);

Se puede utilizar el comando memory2 para asignar suficiente memoria para el archivo. Por
ejemplo si tenemos un archivo de 18 mb por lo menos debemos de asignar 18 mb (debemos de
tomar en cuenta la creación de nuevas variables).

set memory 20m


(20480k)

2
El comando set memory sólo se puede utilizar en las versiones estándar (Stata/IC), estándar + base de datos
extensas (Stata/SE) y en la versión Stata/SE + procesamiento paralelo (Stata/MP). No es aplicable en la versión para
estudiantes de pregrado (Small Stata). En la versión Stata/SE el límite de variables independientes es 11,000
(matsize)mientras que el límite de la memoria es igual al del sistema operativo.

7
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Se puede hacer permanente esta configuración de la siguiente manera:

set memory 20m, permanent

Adicionalmente el comando matsize permite establecer el número de variables que pueden ser
incluídos en las estimaciones realizadas por Stata. El uso de este comando puede ser útil en
ciertas aplicaciones.

Por ejemplo, si al estimar una regresión anova, aparece un error “matsize too small”. Este
problema se puede superar mediante el comando set matsize. La mayor configuración es de
800.

set matsize 800

Se puede hacer este cambio permanente de la siguiente manera:

set matsize 800, permanent

1.3.2. Manejo de directorios

Stata se instala por defecto en C:\STATA\ y guarda los datos con los que se trabaje en
C:\DATA\ salvo que dicha configuración de archivos haya sido cambiada. Para conocer con que
directorio está trabajando Stata se utiliza el comando pwd

pwd
Con el comando sysdir se pueden visualizar los directorios que STATA emplea para guardar el
programa y la información.

sysdir

STATA: C:\STATA\
UPDATES: C:\STATA\ado\updates\
BASE: C:\STATA\ado\base\
SITE: C:\STATA\ado\site\
PLUS: c:\ado\plus\
PERSONAL: c:\ado\personal\
OLDPLACE: c:\ado\

Con el comando cd podemos cambiar de directorio donde se guardan los datos, aunque estos
cambios solo serán validos por la sesión en uso.

cd C:\

Para crear un nuevo directorio se emplea el comando mkdir:

mkdir sesion21012006

Para obtener un listado de todos los archivos del directorio en uso:


8
Stata 10.0 para economistas
Humberto Ortiz Ruiz

dir

Para restringir el listado a los datos:

dir *.dta

Es posible también copiar los datos de un archivo:

copy auto.dta auto.bak

También es posible borrar archivos:


erase auto.bak

1.3.3. Guardar una sesión de Stata

En la ventana de resultados se muestran los resultados más recientes que se hayan generado.
Sin embargo los resultados previos no se van a poder visualizar3. Para guardar una sesión de
Stata, se debe de crear un archivo *.log utilizando el comando log.

STATA permite guardar un registro de los comandos y los resultados. Para crear un archivo de
bitácora se usa el comando log using:

log using bitacora

Por defecto se guarda en el directorio en uso y en formato SMCL (que es el que usa STATA)
para presentar los resultados.

use "C:\cursos\Stata9\Sesion01\auto.dta”, clear


describe

Para parar momentáneamente el registro de la bitácora:


log off

Este comando no será registrado:


summ

Para reanudar el registro de la bitácora:

3
Otra solución podría ser “agrandar” la ventana de resultados de forma tal que pueda guardar mayor cantidad de
output. Por ejemplo, si queremos que la ventana de resultados contenga hasta 300,000 bytes, se puede utilizar el
comando scrollbufsize de la siguiente manera
set scrollbufsize 300000
(set scrollbufsize will take effect the next time you launch Stata)
Como indica el mensaje, la configuración tendrá efecto recien en la siguiente sesión de Stata. Sin embargo, esta
configuración será recordada cada vez que se inicie una sesión.
Sin embargo esta opción se utiliza muy poco en la medida que requiere mayor uso de recursos informáticos
(memoria).

9
Stata 10.0 para economistas
Humberto Ortiz Ruiz

log on

Este comando si será registrado:


tab rep78

Para detener la bitácora:


log close

Para reanudar una bitácora:


log using bitácora, append

Para sobrescribir una bitácora:


log using bitacora, replace

Para ver una bitácora:


type bitacora.smcl

Si lo único que se desea es guardar los comandos debe emplearse cmdlog. Esta opción es
especialmente útil cuando lo que se busca es crear un archivo do.

cmdlog using C:\cursos\Stata9\Sesion01\comusados


help log

Los archivos log guardan lo que aparece en la ventana de resultados o en la barra de


comandos. Es decir, no guardan los gráficos. Hay algunas maneras de guardar los gráficos,
pero la más comun es la de copiarlos y pegarlos en Microsoft Word.

1.3.4. Abrir y guardar una base de datos.

El manejo de datos es tal vez la parte más importante a la hora de trabajar en Stata. El manejo
de datos consiste en introducir los datos en un formato en el cual se puedan realizar los análisis
de manera adecuada. La mayoría de los errores se deben en gran medida a un manejo de
datos deficiente en lugar de un análisis deficiente.

La forma como STATA carga los datos a la memoria es similar a la de un procesador de textos
o a la de una hoja de cálculo. No se realizan los cambios hasta que el usuario explícitamente
los guarda.

Cuando se emplea el comando use, los datos se cargan a la memoria del ordenador. Para
guardar los datos se debe emplear el comando save. Es recomendable no sobrescribir los
datos y trabajar en un directorio diferente del donde se encuentran los datos originales.

use "C:\auto.dta"

1.3.4.1. Ingresando datos con el editor

Para ingresar los datos directamente al editor 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 pulse dos
10
Stata 10.0 para economistas
Humberto Ortiz Ruiz

veces sobre el nombre de estas y aparece un cuadro de diálogo en el cual puede cambiar el
nombre, la etiqueta y el formato 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 tenían un encabezado con el nombre de
la variable, STATA nombrará las variables al pegarlas.

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. También los datos pueden ser
introducidos cortándolos desde Excel y pegándolos en la hoja de cálculo de Stata.

Ejemplo: tenemos la siguiente encuesta:

Sexo: H = 1 M = 0
Profesión: Estudiante Economista Estudiante =1 Economista =0
Edad: 29
¿Los Alumnos del Infopucp tienen hábitos de fumar?
Si =1
Algunas veces =2
NO =3

Ahora cargamos esta información en el editor de stata:

11
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nota : Tener en cuenta que el Editor para definir una variable va a requerir que exista al menos
una observación de esta variable.

1.3.4.2. Comandos use y save

Los datos pueden ser cargados al programa utilizando el comando use seguido por la ruta en
donde se encuentra la base de datos.

12
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Ejemplo

use “C:\auto.dta”, clear

Una segunda opción es siguiendo la ruta: File\Open

Una tercera opción es mediante la combinación: ctrl + O

Si existen datos en la memoria cualquiera de esta opciones será rechazada a menos que se
use la opción clear.

Si deseamos información solo de algunas variables podemos usar la opcion:

use “C:\auto.dta” if mpg>15

Podemos continuar realizando selecciones como por ejemplo de los 10 primeros datos, para
ello bastará con indicar la opción:

use “C:\auto.dta” in 1\10

Para trabajar con algunas variables usamos la opción :

use mpg weight price using “C:\auto.dta”

Si queremos modificar, las observaciones tenemos el comando expand me permite incrementar


el número de observaciones

expand 10

Notamos que el número de observaciones ahora se ha multiplicado por 10.

Para guardar las modificaciones se utiliza el comando save.

save "C:\auto2.dta"

Nota: 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 máquina
perdemos los cambios.

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

13
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.4.3. Comando insheet

El comando insheet es muy útil a la hora de leer datos de provenientes de una hoja de cálculo.
Existen algunos requerimientos antes de poder utilizar este comando:

1. La primera línea debe de tener los nombres de las variables (en versiones anteriores a
Stata 6.0 menores a ocho caracteres). Los nombres no deben de empezar con
caracteres especiales o números.

2. En la segunda fila se introducen los datos.

3. Los casos en que se la data contenga un valor perdido deben de ser guardados con una
celda vacía. A menudo se emplea 0, 9 ,99 para codificar los casos perdidos; este
procedimiento es correcto siempre y cuando no se utilicen valores válidos para la
variable.

4. Las comas en los números o el texto resultan problemáticas debido a que Stata piensa
que se trata de un carácter delimitante y no leerá los datos de manera apropiada. Es
recomendable remover las comas a la hora de guardar los datos.

5. Algunas hojas de cálculo al crear un archivo de extensión “csv” no pone comas al final
de la fila debido a que las celdas están vacías. Esto puede confundir al programa que
está diseñado de tal manera que cuenta con las comas para ubicar los valores. Se
puede evitar este problema aumentando una columna de comas de unos (1, o de
cualquier otro carácter) a la hoja de cálculo. Se puede eliminar esta variable una vez que
Stata ya ha leído el archivo.

6. El archivo debe ser guardado específicamente como un archivo “csv” (Comma


Separated Values). El procedimiento para esto es el siguiente: Seleccionamos el menú
File\Save As… , y luego escogemos el formato "comma separated values".

7. Cambiar la extensión del archivo a “csv” no es suficiente. Cuando se cierra la sesión de


la hoja de cálculo y Excel pregunta si se quieren guardar los cambios hay que
seleccionar “No”. Parece contradictorio pero los cambios a los que se refiere la hoja de
cálculo son los que necesita para volver el archivo al formato de una hoja de cálculo
nuevamente.

8. una vez que se han completado los cambios y estamos trabajando en Stata, hay que dar
al programa la siguiente orden:

. insheet using filename.csv

14
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Una vez transformados los datos se verían así en la hoja de cálculo:

Para que Stata pueda leer el archivo. Si sale el siguiente mensaje de error "wrong number of
values," ha habido un problema en la especificación de las comas en el archivo y hay que
revisar como se ha guardado el archivo csv.

15
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Ejemplo

Veamos como son las bases


Abrimos el archivo

datos_tab.txt
VW Rabbit 4697 25 1930 3.78
Olds 98 8814 21 4060 2.41
Chev. Monza 3667 2750 2.73
AMC Concord 4099 22 2930 3.58
Datsun 510 5079 24 2280 3.54
5189 20 3280 2.93
Datsun 810 8129 21 2750 3.55

Ahora en la línea de comandos escribimos las siguientes ordenes:

clear
set mem 10m
set more off

cd "C:\cursos\Stata9\Sesion02"

insheet using datos_tab.txt, clear


insheet make price mpg weight gear_ratio using datos_tab.txt,clear

16
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.4.4. Comando infix

Permite importar datos que no están en formato de STATA pero que están en un formato fijo.
Este comando es mucho más potente que insheet pues permite el uso de condicionales y de
diccionarios.

Ejemplo

persons.raw
........329193402male..32......42000¶
........472921002male..32......50000¶
........329193100male..45¶
........399938271female30......43000¶
........484873982female33......48000¶
123456789012345678901234567890123456789

El siguiente es un ejemplo del diccionario de datos persons_infix.dct empleado para leer el


archivo persons.raw.

persons_infix.dct
infix dictionary using persons.raw {
1 lines
1:
long idnumb 7-17
str6 sex 18-23
int age 24-25
float income 32-36
}

Escribamos las siguientes ordenes en la lìnea de comando:

clear
set mem 10m
set more off

cd "C:\cursos\Stata9\Sesion02"

infix idnumb 7-17 using persons, clear


infix long idnumb 7-17 using persons, clear
infix long idnumb 7-17 int age 24-25 using persons if age<=30, clear
infix long idnumb 7-17 int age 24-25 using persons if age>=30, clear
infix long idnumb 7-17 str6 sex 18-23 int age 24-25 float income 32-36 using persons, clear
infix using persons_infix.dct, clear

17
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.4.5. Comando infile

El comando “infile” se utiliza cuando se ha descargado un archivo de datos de la web y cumple


con las siguientes especificaciones:

1. El archivo NO debe de tener nombres de las variables en la primera línea.


2. Las variables alfanuméricas que incluyan espacios (P ej. : los nombres) deben de estar
encerrados entre comillas.
3. Los números pueden incluir comas y signos negativos, pero símbolos de dólar o
porcentuales.
4. El comando Infile, asume que las variables tienen espacios entre ellas y que no existen
espacios en blanco donde debería de haber data (se debe representar con algún código
los valores perdidos).

La línea de comandos para el leer un archivo con el comando infile es el siguiente:

infile var1 var2 var3 using mydata.raw

En esencia, “insheet” asume que las variables están separadas por comas. Por otro lado, “infile”
asume que los espacios en blanco separan a las variables. Por ejemplo, supongamos que se
tiene un archivo de datos de extensión raw llamado mydata.raw que contiene los siguientes
campos:

1 55 4.5
2 23 3.2
3 34 3.4
4 52 7.1
5 41 2.9

Se puede utilizar el siguiente comando de Stata para leer este archivo:

infile [varlist] using [filename]

donde varlist es la lista de variables y filename es el nombre del archivo que contiene la data
raw.

Por ejemplo

infile caseid age score using mydata.raw

donde caseid, age y score son los nombres de las variables y mydata.raw es el archivo que
contiene la data. Sin embargo, puede ser más sencillo exportar el archivo a una hoja de Excel,
guardarlo con una extensión csv, y después utilizar el comando insheet.

También se puede utilizar el archivo Infile para leer datos que contengan muchas variables o
múltiples registros por observación, ó más generalmente, cuando se necesita leer datos que
han sido guardados en formatos particulares. En estos casos, es a menudo más sencillo (y a
veces necesario) leer la data utilizando un archivo dictionary como se describe a continuación.

18
Stata 10.0 para economistas
Humberto Ortiz Ruiz

19
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.5. Transformación de variables

1.3.5.1. Comando generate y egen

Genera una nueva variable definida en base a una expresión numérica la cual puede contener
otras variables. Por su flexibilidad, este es uno de los comandos más importantes de Stata, ya
que se pueden utilizar un gran número de operaciones lógicas, aritméticas y matemáticas.

Desde el menú principal utilizamos la siguiente ruta: Data/Create or change variables/Create


new variable y aparece un cuadro de diálogo en el cual debemos ingresar el nombre de la
variable y su regla de creación.

Ejemplo.

En la casilla Generate variable escribimos wtsq, pulsamos el botón Create, elegimos la


variable weight con un click en la ventana de variables usamos la calculadora para elevar esta
variable al cuadrado finalmente pulsamos el botón OK en los dos cuadros de diálogo.

Al final de este proceso vemos que ha aparecido una nueva variable (wtsq) y que el comando
empleado en su creación ha aparecido en la ventana de Results y en la ventana Review.

Nota: En Stata los comandos deben ir siempre en minúsculas, Para los nombres de las
variables Stata tomará en cuenta si empleamos minúsculas o mayúsculas, no son la misma
variable Curso, curso, CURSO, ni por ejemplo CurSo.

Observemos que por defecto a la nueva variable se le ha asignado el tipo float.

Nota: Para reejecutar los comandos pulsamos el comando en la ventana Review o lo


escogemos con las teclas avanzar página y/o retroceder página.

20
Stata 10.0 para economistas
Humberto Ortiz Ruiz

A continuación se indican los procesos para la Creación de variables

generate newvar=expcrea una variable nueva


replace oldvar=exp reemplaza una variable (Stata no sobrescribe variables, este comando no
se puede abreviar)

drop borra una variable


keep borra las variables no nombradas

Nota : los caracteres válidos son dígitos (0-9), caracteres (a-z y A-Z) y el guión bajo (_), Stata
recomienda que las variables comiencen con mayúsculas (para evitar confusiones con los
comandos que siempre van en minúsculas)

Obtenemos la misma variable con los siguientes comandos:

gen wtsq = weight^2

Ejemplo

Si queremos generar el logaritmo de la variable educ

gen logprice =ln(price)

21
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Si la variable ya existe usaremos el comando replace, Otras funciones para usar con
generate:

generate y=abs(x) valor absoluto|x|


x
gen y=exp(x) exponencial, e

gen y=ln(x) logaritmo natural

gen y=log10(x) logaritmo de base 10

gen y=sqrt(x) raíz cuadrada

gen y=int(x) parte entera de

gen y=round(x) redondeo de x al entero mas cercano

gen y=round(x, 0.25) redondeo de x al 0.25º mas cercano

gen y=mod(x1,x2) el residuo de dividir x1 por x2

gen y=max(x1,...xn) máximo valor del argumento

gen y=min(x1,...xn) mínimo valor del argumento

gen y=sum(x) suma acumulativa de observaciones

gen y=_n es la observación número n

gen y=_N es el número de observaciones en el set de datos

22
Stata 10.0 para economistas
Humberto Ortiz Ruiz

El comando egen Es una extensión del comando generate. Este comando me va a permitir
calcular expresiones mas complejas, tales como: medias, desviaciones estándar, promedios
móviles, variables estandarizadas, etc.

Ejemplo

Generemos una serie que sea igual al valor máximo de la variable educ

egen max_X =max(price)

Ahora hacemos lo mismo pero mediante la barra de menús la ruta es Data\Create or change
variables\Create new variable(extended)

1.3.5.2. Recodificación de variables: rename

Se usa para renombrar una variable sin cambiar su contenido.

Ejemplo

ren wtsq peso2

Esta orden nos cambia el nombre de wtsq por peso2 en nuestros datos.

1.3.5.3. Comando recode

Sirve para cambiar los valores de una variable

Ejemplo

list peso2 if peso2 == 3097600

Ahora cambiemos estas observaciones por un punto:

recode peso2 (3097600=.)

1.3.5.4. Comando sort

Organiza las observaciones de las variables en orden ascendente.

Ejemplo

sort mpg

Nota : los valores missing se interpretan como mayores que cualquier número y por lo tanto
aparecen al final”

23
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.5.5. Conversión de variables

De una variable string a variables numérica

Para hacer este ejercicio generaremos la siguiente variable string

generate str1 Cumple = "1" if year==80

Si tenemos una variable Xstr su conversión a variable numérica Xnum puede ser obtenida de la
siguiente forma:

generate double Cumplenum = real(Cumple)

A la derecha podemos visualizar nuestra variable string convertida ya en numérica.

24
Stata 10.0 para economistas
Humberto Ortiz Ruiz

De una variable string no- numérica a una numérica

Para ello usamos las siguientes secuencias de comandos:

sysuse auto, clear

encode make, generate(numero)

Si quisiéramos ver la asignación de los números entonces digitamos los siguientes comandos:

label list numero

Podemos generar una nueva variable que contenga algún subconjunto de los nombres de las
características generadas por alguna variable anterior.

generate str4 a2 = substr( make,2,4)

estamos generando una variable string de nombre a2 que contiene como características los
caracteres 2 a 4 de la variable make:

1.3.5.6. Operadores Relacionales y Lógicos

Ejemplo: replace educ =. if year<80

En este primer ejercicio lo que decimos es que si year es menor a 80 entonces que la variable
educ tenga un punto:

Ejemplo: Ahora le pido al Stata que me haga un resumen estadístico de la variable meduc
cuando la variable year es igual a 78

25
Stata 10.0 para economistas
Humberto Ortiz Ruiz

summarize meduc if year==78

Ejemplo : Con esta orden le estoy pidiendo al Stata que haga una lista de variables siempre y
cuando year sea igual a 80 y la educ menor o igual a 10

list year educ meduc feduc age if year==80 & educ <=10

Ejemplo 4: Con esta orden le pido a Stata que me busque las observaciones que cumplan esa
condición:

keep if year==80 | educ <=10

26
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nota : las expresiones lógicas pueden ser verdaderas o falsas un valor de “0” indicaría que la
condición no se cumple y un valor de “1” podría indicar el cumplimiento de la misma”

27
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.3.5.6. Selección de Observaciones

Comando keep

Con esta orden le pido a Stata que me mantenga las observaciones que cumplan con la
condición.

keep if rep78 ==3

Con esta orden seleccionamos aquellas observaciones que coincidan con rep78 ==3

keep in 1\10

Esta opción me permite observar solo las primeras 10 observaciones suprimiendo las restantes.

Comando drop

Esta opción lo que hace es borrar todas aquellas observaciones en las cuales se cumpla alguna
condición.

drop if mpg<19

Nota : Las observaciones borradas podemos observarlas nuevamente usando el comando use
este nos permite volver a cargar la información”

1.3.6. Muestras

sample 10

Con la siguiente orden estoy obteniendo una muestra simple de exactamente 20 observaciones

sample 57 , count

1.3.7. Agregando etiquetas a los datos

En STATA es posible agregar etiquetas a los datos para mejorar la legibilidad de la información.

Los comandos son:

label data
label variable
label define
label dir
label list
label drop

Ejemplo

28
Stata 10.0 para economistas
Humberto Ortiz Ruiz

*ETIQUETANDO UN ARCHIVO
label data "Este es un ejmplo adaptado de la ayuda del comando infile"
describe
label data
describe
*label data remueve la etiqueta del conjunto de datos

*ETIQUETANDO UNA SERIE


label variable idnumb "Indicador de individuo"
label variable sex "Sexo"
label variable age "Edad"
label variable income "Ingreso"
describe

*RECODIFICANDO UNA VARIABLE


generate sexo=1 if sex=="male"
replace sexo=0 if sex=="female"
count if sexo>=.
drop sex
label variable sexo "Sexo del encuestado"

*ETIQUETANDO LOS VALORES DE LAS VARIABLES


label define codsexo 1 "hombre"
label define codsexo 0 "mujer", add
label list
label dir
describe
label values sexo codsexo
describe

*CREAR UN LIBRO DE CODIGOS DE LAS ETIQUETAS DE LAS VARIABLES


labelbook codsexo

*BORRANDO LAS ETIQUETAS DE LAS VARIABLES


label drop codsexo

label define codsexo 1 "hombre"


label define codsexo 0 "mujer", add

1.3.8. Agregando formato a los datos

Una manera rápida de cambiar el formato de una variable es seguir la siguiente ruta en el menú
principal:

data\variable utilities\ Set variable display format

Formatos Numéricos

29
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Primer tipo % indica el inicio del formato


luego, tipo
opcional - si se quiere buscar el resultado alineado a la izquierda
luego, tipo
opcional 0 si se quiere conservar los "ceros principales"
luego tipo un número w indica el tamaño del resultado
luego tipo .
luego tipo un número d indica el número de dígitos después del punto décimal
luego tipo
cualquiera E para notación científica; e.g., 1.00e+03
ó F para formato fijo; e.g.; 1000.0
para formato general; Stata elige de acuerdo al
ó G número mostrado
luego, tipo indica el formato de "coma" (no se permite con la
opcional C opción e)

Formato de Fechas

Primer tipo % indica el inicio del formato


luego, tipo
opcional - si se quiere buscar el resultado alineado a la izquierda
luego tipo D
luego, tipo otros
opcional carácteres indica cómo la fecha puede ser mostrada

Formatos de Series de Tiempo

Primer tipo % indica el inicio del formato


luego, tipo
opcional - si se quiere buscar el resultado alineado a la izquierda
luego tipo t
luego tipo un carácter para indicar cómo está codificada la fecha
tipo d if 0=01jan1960, igual a %d format
o tipo w if 0=1960w1
o tipo m if 0=1960m1
o tipo q if 0=1960q1
o tipo h if 0=1960h1
o tipo y if 1960=1960 (indica un año específico)
luego, tipo otros
opcional caracteres indica cómo la fecha debe ser mostrada

Formatos por defecto

0 es mostrado 2,000 es mostrado


Formato Defecto como: como:
%td %tdDlCY 01jan1960 23jun1965

30
Stata 10.0 para economistas
Humberto Ortiz Ruiz

%tw %twCY!ww 1960w1 1998w25


%tm %tmCY!mn 1960m1 2126m9
%tq %tqCY!qq 1960q1 2460q1
%th %thCY!hh 1960h1 2960h1
%ty %tyCY . 2000
%tg %9.0g 0 2000

1.4. Gráficos

A continuación veremos como introducir algunos comandos básicos en Stata 10, incluyendo
histogramas , gráficos de caja y bigote, ploteos y matrices de ploteos.

Utilizaremos la base de datos auto.dta en los siguientes ejemplos:

use auto.dta, clear

Podemos utilizar el comando histogram para generar un histograma de la variable mpg

histogram mpg
.1
.08
.06
Density
.04
.02
0

10 20 30 40
Mileage (mpg)

Se puede realizar un ploteo de dos dimensiones para ilustrar la relación entre mpg y
weight. Como esperamos, existe una relación negativa entre estas dos variables.

31
Stata 10.0 para economistas
Humberto Ortiz Ruiz

graph twoway scatter mpg weight


40 30
Mileage (mpg)
20
10

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


Weight (lbs.)

Obtendríamos el mismo gráfico si escribimos la siguiente línea:

twoway scatter mpg weight

32
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Podemos mostrar la línea de regresión prediciendo mpg de weight de la siguiente


manera:

twoway lfit mpg weight

Podemos obtener el mismo gráfico con la siguiente línea de comandos:

twoway (scatter mpg weight) (lfit mpg weight)

33
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Podemos aumentar etiquetas a los valores mediante el comando make como se


muestra a continuación.

Nota: mlabel es una opción del comando scatter

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

34
Stata 10.0 para economistas
Humberto Ortiz Ruiz

A continuación combinamos dos posibilidades: obtener dos gráficos, uno para los carros
nacionales y otro para los carros extranjeros; y bandas de confianza alrededor de los
valores predichos utilizando la opciòn lfitci en lugar de lfit, Observamos que la opciòn
by se encuentra al final de la línea de comandos.

twoway (scatter mpg weight) (lfitci mpg weight), by(foreign)

35
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Se puede estimar una matriz de ploteos con el commando graph matriz. A continuación
examinamos la relaciòn entre mpg, weight, y precio.

graph matrix mpg weight price

36
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Comando Graph

Los comandos que generan gráficos son:

comando descripción
------------------------------------------------------------------
graph twoway scatterplots, line plots, etc.
graph matrix scatterplot matrices
graph bar bar charts
graph dot dot charts
graph box box and whisker plots
graph pie pie charts
other more commands to draw statistical graphs
------------------------------------------------------------------

Comando Graph Twoway

Los miembros de la familia de los gráficos twoway son llamados “plottypes”

[graph] twoway plot [if exp] [in range] [, twoway_options]

where plot is defined

[(] plottype varlist ..., options [)] [||]

plottype description
----------------------------------------------------------------------
scatter scatterplot
line line plot
connected connected-line plot
scatteri scatter with immediate arguments

area line plot with shading


bar bar plot
spike spike plot
dropline dropline plot
dot dot plot

rarea range plot with area shading


rbar range plot with bars
rspike range plot with spikes
rcap range plot with capped spikes
rcapsym range plot with spikes capped with symbols
rscatter range plot with markers
rline range plot with lines
rconnected range plot with lines and markers

mband median-band line plot


mspline spline line plot
lowess LOWESS line plot

37
Stata 10.0 para economistas
Humberto Ortiz Ruiz

lfit linear prediction plot


qfit quadratic prediction plot
fpfit fractional polynomial plot
lfitci linear prediction plot with CIs
qfitci quadratic prediction plot with CIs
fpfitci fractional polynomial plot with CIs

function line plot of function


histogram histogram plot
kdensity kernel density plot
----------------------------------------------------------------------

38
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráfico Twoway Scatter

[twoway] scatter varlist [weight] [if exp] [in range] [,


marker_options
marker_placement_option
marker_label_options
connect_options
axis_selection_options
composite_style_option
twoway_options ]

Gráfico Twowat Line

[twoway] line varlist [if exp] [in range] [, line_options ]

White and black life expectancy


USA, 1900-1999
1918
Life expectancy at birth (years)

80
70
60
50
40
30
20 20
15
10
5
0 0
1900 1920 1940 1960 1980 2000
Year
Life expectancy, w hite males Life expectancy, black males
Difference Fitted values
Source: National Vital Statistics, Vol 50, No. 6
(1918 dip caused by 1918 Inf luenza Pandemic)

39
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Opción Combine

En la misma área de gráficos, combina 2 o más gráficos (pueden ser de diferentes tipos.

graph combine name [name ...] [, combine_options ]


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

Life expectancy at birth vs. GNP per capita


Fraction Log base 10 of GNP per capita
.3 .2 .1 0 2.5 3 3.5 4 4.5
55 60 65 70 75 80

0 55 60 65 70 75 80
Life expectancy at birth

Life expectancy at birth


.05
Fraction
.15
.2 .1

2.5 3 3.5 4 4.5


Log base 10 of GNP per capita
Source: 1998 data f rom The World Bank Group

40
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Opciones de marcador

Modifica los marcadores y/o sus etiquetas para ajustarse a las preferencias del usuario.

marker label option

Life expectancy vs. GNP per capita


North, Central, and South America
80

Canada
United States
Life expectancy at birth(years)
75

Jamaica Chile
Panama Uruguay
Venezuela Trinidad Argentina
Mexico
Dominican Republic
70

Ecuador Para Colombia


Honduras El Salv ador Peru
Nicaragua
Brazil
65

Guatemala
Boliv ia
60 55

Haiti

.5 5 10 15 20 25 30
GNP per capita (thousands of dollars)
Data source: World bank, 1998

División

Permite crear gráficos múltiples a partir de submuestras.

by_option is by( varlist (, suboptions ) )

Domestic Foreign
40
30
20
Mileage (mpg)
10

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

Total
40
30
20
10

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


Weight (lbs.)
Graphs by Car ty pe

41
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráfico de Picos

Se trabaja con este tipo de gráficos cuando se grafican datos bursátiles.

twoway rspike y1var y2var xvar [if exp] [in range] [, rspike_options
scatter_options ]

S&P 5000
1400
Price -- High, Low; Close
1100 1200 1300

Volume(millions)
10 15 20

05jan2001 25jan2001 14feb2001 06mar2001 26mar2001


Date...
Source: Y ahoo!Finance and Commodity Sy stems, Inc.

Gráfico de Matriz

Ordena los gráficos de manera matricial.

graph matrix varlist [weight] [if exp] [in range] [, matrix_options]

42
Stata 10.0 para economistas
Humberto Ortiz Ruiz

50 60 70 80 20 40 60 80 100
3
A vg. 2
annual 1
%
grow th 0
-1
80

70 Life
expectancy
60 at birth
50
12

10
lgnppc
8

6
100
80
60 saf ew ater
40
20
-1 0 1 2 3 6 8 10 12

43
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráfico de caja y bigote

Ordena los gráficos de manera matricial.

graph hbox yvars [weight] [if exp] [in range] [, options ]

Response to Treatment, by Sex


(120 Preoperative Patients)
180
Systolic blood pressure
140 120160

Before After Before After


Male Female
Source: Fictional Drug Trial, Stata Corporation, 2003

Gráficos de pie

Se utilizan cuando nos interesa analizar proporciones.

graph pie yvars [weight] [if exp] [in range] [, options ]

44
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Expenditures, XYZ Corp.


2002

Development
Sales

Research

Marketing

Source: 2002 Financial Report (f ictional data)

45
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráficos de barras

Se pueden realizar gráficos con barras verticales y horizontales.

graph bar yvars [weight] [if exp] [in range] [, options ]

graph hbar yvars [weight] [if exp] [in range] [, options ]

Average Hourly Wage, 1988, Women Aged 34-46


by College Graduation, Marital Status, and SMSA residence
15
10
5
0

single married single married


not college grad college grad
nonSMSA SMSA
Source: 1988 data f rom NLS, U.S. dept of Labor, Bureau of Labor Statistics

Spending on tertiary education as % of GDP, 1999


Canada
United States
Sw eden
Denmark
Netherlands
Ireland
Australia
France
Germany
Britain

0 .5 1 1.5 2 2.5
Public Private
Source: OECD, Education at a Glance 2002

46
Stata 10.0 para economistas
Humberto Ortiz Ruiz

47
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráfico de puntos

graph dot yvars [weight] [if exp] [in range] [, options ]

Average hourly wage, 1988, women aged 34-46


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

0 2 4 6 8 10
mean of w age
Source: 1988 data f rom NLS, U.S. Dept of Labor, Bureau of labor Statistics

Gráfico Twoway HIstogram

twoway histogram varname [weight] [if exp] [in range]


[, [discrete_options|continuous_options] common_options ]

48
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Eur & C.Asia N.A.


.3
.2
.1
0
Density

S.A. Total
.3
.2
.1
0

50 60 70 80 50 60 70 80
Life expectancy at birth
Graphs by Region

49
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Gráfico Twoway Kdensity

twoway kdensity varname [if exp] [in range]


[, kdensity_options line_options]
.1 .08
Density/kdensity lexp
.04 .06
.02
0

55 60 65 70 75 80
Life expectancy at birth/x
Density kdensity lexp

1.5. El do-file

A través 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 través de los llamados “do-files”. La ventaja
de estos archivos (de extensión *.do) es que permiten replicar un conjunto de instrucciones
previamente almacenadas. Esto ayuda a ir corrigiendo posibles errores en la ejecución de los
comandos, además de permitir guardar la rutina de comandos ejecutados para sesiones
posteriores.

Los dofiles permiten

1. Mantener un registro de todo lo que se ha hecho en la sesión y poder replicarlo.


2. Correr una gran cantidad de comandos.

Se pueden considerar como un mecanismo de seguridad por permitir facilmente regresar a la


data original sin importar cuantas transformaciones se hayan realizado.

Recordemos que para abrir la ventana del Do-file Editor pulsamos el botón correspondiente o
las teclas {ctrl+8} o desde el menú principal: Windows/Do-file Editor. Como ejemplo
abriremos el archivo coment.do. Para ejecutar unas líneas las iluminamos y luego pulsamos el
penúltimo botón de dicha ventana. Para ejecutarlo todo pulsamos el último botón o empleamos
el comando do del siguiente modo:

50
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.6. Uso del menu Help

El comando help es uno de los comandos más importantes de Stata, pues presenta la sintaxis
de los comandos así como ejemplos de cómo 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 summarize

Observemos que el comando y sus opciones están en letra blanca mientras que la mayor parte
del resto de la sintaxis va en letra verde4. En el nombre del comando se observa que las dos
primeras letras están subrayadas, lo que indica que podemos en lugar de escribir el comando
como summarize podemos escribir su (o cualquier forma intermedia).

Notemos que todo lo que va entre corchetes es optativo y que en la sintaxis de los comandos
primero se ponen las variables, luego el peso, los condicionales (if) preceden a los rangos (in) y
les siguen las opciones después de un coma:

[varlist] es la lista de variables.


[weight] son los pesos o ponderaciones.
[if exp] permite seleccionar la muestra donde exp es una expresión lógica.
[in range] permite seleccionar la muestra donde range es un rango de los datos.

4
La letra celeste se reserva para los hipervínculos.

51
Stata 10.0 para economistas
Humberto Ortiz Ruiz

La sintaxis de los comandos Stata tienen un formato comun:

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

Sin embargo usaremos una version mucho más simple como:

[by lista de var:] comandolista 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 especificas al comando tienen que ser precedidas por una coma.

Otra información clave es la forma en que podemos obtener ayuda. Todos los comandos Stata
tienen información acerca de la manera en que deben utilizarse (sintaxis y opciones); para
acceder a ella es solo cuestión 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 documentación 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.

1.7. Uso del Stat\transfer

Para poder trabajar con una base de datos de extensión distinta a la de Stata (.dta) hay dos
maneras. La primera de ellas se consiste en el tedioso proceso de introducir uno a uno los
datos en Stata editor. La segunda es una manera mucho más sencilla y conveniente de
hacerlo, y se refiere al uso del Statransfer. Este último proceso permite introducir archivos
desde casi cualquier otro programa a Stata.

Stat\Transfer5 es un software que permite guardar archivos en diversos formatos, haciendo


fácil el paso de datos entre softwares estadísticos, bases de datos y hojas de cálculo.

 Para ingresar al Stat\Transfer basta con dar un clic sobre el icono:

 Inmediatamente aparecerá un ventana con 4 listas desplegables donde se debe


seleccionar la siguiente información:

1. Input File Type: Es el formato original en el que se encuentran los datos.

5
Ver http://www.stattransfer.com/

52
Stata 10.0 para economistas
Humberto Ortiz Ruiz

2. File Specification: Es la ruta y nombre del archivo de datos que se importará.

3. Output File Type: Es el formato nuevo en el que se guardará el archivo.

4. File Specification: Es la ruta y nombre del archivo que se creará

 Para cambiar el formato de un archivo, debemos primero especificar su programa y ruta


de origen en las celdas Input file type y File specification (la que se encuentra en la
primera mitad de la ventana) respectivamente.

 Luego debemos especificar, en la celda Output file type, el formato en el que


deseamos este disponible la base de datos, en este caso el de Stata. Finalmente, en la
última celda (File specification) indicamos la dirección en la que deseamos esté
disponible el archivo.

 Como ejemplo, abriremos el archivo de Excel con el nombre: enaho01-2003-700 y lo


guardamos en el escritorio. Sin olvidar cerrar el archivo de Excel para poder utilizarlo,
ingresamos en el cuadro de diálogo del Stat\transfer los siguientes datos:

 Luego de completar los campos, dar clic en Transfer y el software iniciará la importación.

 Para ejecutar la conversión, se hace click sobre el botón Transfer y una vez realizada
se presiona Reset.

Nota 25: Basta tener a la base de datos disponible en formato Stata6, para poder disponer de
ella en las versiones posteriores de Stata, si recordamos de la sesión anterior existe
compatibilidad hacia adelante. Recordemos que en Stata6 los nombres de las variables sólo
pueden ser de hasta 8 dígitos.

Nota 26: La lista de programas desde la cual se pueden recoger los datos se encuentra
especificada en el cuadro de diálogo del Stat\Transfer, a esta lista se tiene acceso haciendo
click sobre el ratio botton ubicado en el extremo derecho de la primera celda Input File Type.

Nota : Del mismo modo ocurre al especificar el formato de destino. Este programa no solo
transforma las bases de datos a formato Stata sino que hay más posibilidades.
Por ejemplo, para importar el archivo de datos ‘Probit99.sav’ del formato Spss al Stata 6.0 la
ventana debe tener la siguiente apariencia:

53
Stata 10.0 para economistas
Humberto Ortiz Ruiz

También podemos convertir la base de datos existente en formato Stata a formato SPSS.

54
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.8. Ejemplo de sesión en Stata 10

A continuación, veremos en qué consiste una sesión de trabajo en Stata 10 y exploraremos


algunos comandos. Al mismo tiempo conoceremos la forma interactiva de trabajo con Stata
utilizando la Barra de Menús y los GUI para realizar paralelamente algunas tareas.

Como hemos visto anteiormenten para abrir una base de datos desde el menú principal,
seguimos la siguiente ruta: File/Open. En el cuadro de diálogo que aparece a continuación se
elige el archivo deseado, que en este caso tiene la extensión de los archivos de datos nativos
de Stata, dta.

Como ejemplo de sesión abriremos el archivo auto.dta:

Este archivo contiene una base de datos de autos: 74 observaciones y 12 variables definidas a
continuación:

make = Make and Model


price = Price
mpg = Mileage (mpg)
rep78 = Repair Record 1978
headroom = Headroom (in.)
trunk = Trunk space (cu. ft.)
weight = Weight (lbs.)
length = Length (in.)
turn = Turn Circle (ft.)
displacement = Displacement (cu. in.)
gear_ratio = Gear Ratio
foreign = Car type.

Observemos que se han suscitado cambios en las siguientes ventanas:

Review: use "C:\DATA\auto.dta", clear


Variables: aparece la lista con las variables del archivo auto.dta
Stata Results: use "C:\DATA\auto.dta", clear

Nota: Al ejecutar los comandos mediante estos menús además se registra en la ventana Stata
Review el comando equivalente para la ventana Stata Command. Esta característica es muy
útil cuando se aprende Stata porque es posible ejecutar un comando mediante la GUI y luego
repetirlo empleando comandos.

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 Stata Command para obtener el mismo resultado. Los comandos se han almacenado
en la ventana Review del mismo modo que sucedería si hubiésemos digitado los comandos en
dicha ventana. Si bien trabajar con la barra de herramientas y con los menús desplegables es
más intuitivo, para el usuario experto es más rápido y sencillo potente trabajar directamente con
los comandos (lo cual le permite emplear los archivos de ejecución y la programación
avanzada)

55
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Inspección de los datos

Para ver una descripción rápida de los datos ingresamos describe. Para copiar a MSWord lo
que acaba de aparecer en la ventana de resultados iluminamos dicho resultado y lo copiamos
como texto o como tabla, luego de pegarlo le aplicamos formato indicando el tipo tamaño 9 y
fuente Courier New.

use "C:\Program Files\Stata9\auto"


(1978 Automobile Data)
The data that we loaded contain

. describe

Contains data from http://www.stata-press.com/data/r9/auto.dta


obs: 74 1978 Automobile Data
vars: 12 13 Apr 2005 17:45
size: 3,478 (99.9% of memory free) (_dta has notes)
------------------------------------------------------------------------------
storage display value
variable name type format label variable label
------------------------------------------------------------------------------
make str18 %-18s Make and Model
price int %8.0gc Price
mpg int %8.0g Mileage (mpg)
rep78 int %8.0g Repair Record 1978
headroom float %6.1f Headroom (in.)
trunk int %8.0g Trunk space (cu. ft.)
weight int %8.0gc Weight (lbs.)
length int %8.0g Length (in.)
turn int %8.0g Turn Circle (ft.)
displacement int %8.0g Displacement (cu. in.)
gear_ratio float %6.2f Gear Ratio
foreign byte %8.0g origin Car type
------------------------------------------------------------------------------
Sorted by: foreign
------------------------------------------------------------------------------

. ds /*lista las variables en forma compacta*/


make rep78 weight displacement
price headroom length gear_ratio
mpg trunk turn foreign

56
Stata 10.0 para economistas
Humberto Ortiz Ruiz

57
Stata 10.0 para economistas
Humberto Ortiz Ruiz

. codebook make mpg rep78 weight

-------------------------------------------------------------------------------
make Make and Model
-------------------------------------------------------------------------------

type: string (str18), but longest is str17

unique values: 74 missing "": 0/74

examples: "Cad. Deville"


"Dodge Magnum"
"Merc. XR-7"
"Pont. Catalina"

warning: variable has embedded blanks

-------------------------------------------------------------------------------
mpg Mileage (mpg)
-------------------------------------------------------------------------------

type: numeric (int)

range: [12,41] units: 1


unique values: 21 missing .: 0/74

mean: 21.2973
std. dev: 5.7855

percentiles: 10% 25% 50% 75% 90%


14 18 20 25 29

-------------------------------------------------------------------------------
rep78 Repair Record 1978
-------------------------------------------------------------------------------

type: numeric (int)

range: [1,5] units: 1


unique values: 5 missing .: 5/74

tabulation: Freq. Value


2 1
8 2
30 3
18 4
11 5
5 .

-------------------------------------------------------------------------------

58
Stata 10.0 para economistas
Humberto Ortiz Ruiz

weight Weight (lbs.)


-------------------------------------------------------------------------------

type: numeric (int)

range: [1760,4840] units: 10


unique values: 64 missing .: 0/74

mean: 3019.46
std. dev: 777.194

percentiles: 10% 25% 50% 75% 90%


2020 2240 3190 3600 4060

59
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Hacer listados puede ser informativo

A continuación se muestra una parte de nuestra data:

. list make mpg in 1/10

+---------------------+
| make mpg |
|---------------------|
1. | AMC Concord 22 |
2. | AMC Pacer 17 |
3. | AMC Spirit 22 |
4. | Buick Century 20 |
5. | Buick Electra 15 |
|---------------------|
6. | Buick LeSabre 18 |
7. | Buick Opel 26 |
8. | Buick Regal 20 |
9. | Buick Riviera 16 |
10. | Buick Skylark 19 |
+---------------------+

¿Qué carros tienen el menor millaje por galón?

. sort mpg

. list make mpg in 1/5

+-------------------------+
| make mpg |
|-------------------------|
1. | Linc. Continental 12 |
2. | Linc. Mark V 12 |
3. | Linc. Versailles 14 |
4. | Merc. XR-7 14 |
5. | Cad. Deville 14 |
+-------------------------+

¿Cuáles son los cinco autos con mayor millaje por galón?

. list make mpg in -5/-1

+----------------------+
| make mpg |
|----------------------|
70. | Toyota Corolla 31 |
71. | Plym. Champ 34 |
72. | Subaru 35 |
73. | Datsun 210 35 |

60
Stata 10.0 para economistas
Humberto Ortiz Ruiz

74. | VW Diesel 41 |
+----------------------+

61
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nota : Cuando las ventanas Browser y Edit se encuentran abiertas es imposible ingresar
comandos, puesto que la barra Stata Command desaparece.

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

float números reales en formato 8,5 (8 cifras enteras, cinco decimales)


double números reales en formato 16,5
byte enteros entre –127 y 100
int enteros entre –32767 y 32740
long enteros entre –3147483647 y 2147483620

Stata por defecto le asigna formato float a una variable de datos nueva.
Intercooled Stata9.0 soporta cadenas de hasta 80 caracteres de largo.

str1 cadenas de 1 carácter


str80 cadenas de 80 caracteres

Estadísticas descriptivas

¿Como no estoy familiarizado con los precios de 1978, cuál es el precio promedio de los carros
en esta base de datos?

. summarize price

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
price | 74 6165.257 2949.496 3291 15906

summarize funciona como list, pero sin argumentos, nos da un resumen de toda la data:

. summarize

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
make | 0
price | 74 6165.257 2949.496 3291 15906
mpg | 74 21.2973 5.785503 12 41
rep78 | 69 3.405797 .9899323 1 5
headroom | 74 2.993243 .8459948 1.5 5
-------------+--------------------------------------------------------
trunk | 74 13.75676 4.277404 5 23
weight | 74 3019.459 777.1936 1760 4840
length | 74 187.9324 22.26634 142 233
turn | 74 39.64865 4.399354 31 51
displacement | 74 197.2973 91.83722 79 425
-------------+--------------------------------------------------------
gear_ratio | 74 3.014865 .4562871 2.19 3.89
foreign | 74 .2972973 .4601885 0 1

62
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nota: la variable make tiene 0 observaciones debido a que es una variable de cadena
(string) , calcular una media bajo este comando está indefinido pero no es un error
hacerlo. La variable rep78 sólo tiene 69 observaciones porque no tiene registro para 5
carros.

¿Cuál es el precio promedio de los carros que se encuentran por encima y por debajo de la
media de mpg?

. summarize price if mpg<21.3

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
price | 43 7091.86 3425.019 3291 15906

. summarize price if mpg>=21.3

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
price | 31 4879.968 1344.659 3299 9735

¿Cuál es la mediana de mpg?

. summarize mpg, detail

Mileage (mpg)
-------------------------------------------------------------
Percentiles Smallest
1% 12 12
5% 14 12
10% 14 14 Obs 74
25% 18 14 Sum of Wgt. 74

50% 20 Mean 21.2973


Largest Std. Dev. 5.785503
75% 25 34
90% 29 35 Variance 33.47205
95% 34 35 Skewness .9487176
99% 41 41 Kurtosis 3.975005

Respuesta: 20.

63
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nuestra base de datos contiene la variable foreign que esta codificada de la siguiente manera:
0 si el carro ha sido fabricado los Estados Unidos o Canada, y 1 si el carros ha sido fabricado
en otra parte.

¿Existen diferencias de precio o millaje explicadas por el origen de fabricación?

Para saberlo tenemos que estimar las estadísticas de resumen para las variables price y MPG
en los dos casos se recoge la variable foreign.

Existen dos soluciones para este problema:

1. Tipeando los comandos

summarize price mpg if foreign==0


summarize price mpg if foreign==1

2. O, introduciendo las siguientes líneas de comandos:

. sort foreign

. by foreign: summarize price mpg

------------------------------------------------------------------------------
-> foreign = Domestic

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
price | 52 6072.423 3097.104 3291 15906
mpg | 52 19.82692 4.743297 12 34

------------------------------------------------------------------------------
-> foreign = Foreign

Variable | Obs Mean Std. Dev. Min Max


-------------+--------------------------------------------------------
price | 22 6384.682 2621.915 3748 12990
mpg | 22 24.77273 6.611187 14 41

Parece que el MPG promedio de los carros “domésticos” extranjeros es diferente. Lo que
queremos ahora es saber si son "estadísticamente" diferente. Para ello haremos un contraste
de hipótesis para verificar si las medias de ambos grupos son iguales.

. ttest mpg, by(foreign)

Two-sample t test with equal variances


------------------------------------------------------------------------------
Group | Obs Mean Std. Err. Std. Dev. [95% Conf. Interval]
---------+--------------------------------------------------------------------
Domestic | 52 19.82692 .657777 4.743297 18.50638 21.14747

64
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Foreign | 22 24.77273 1.40951 6.611187 21.84149 27.70396


---------+--------------------------------------------------------------------
combined | 74 21.2973 .6725511 5.785503 19.9569 22.63769
---------+--------------------------------------------------------------------
diff | -4.945804 1.362162 -7.661225 -2.230384
------------------------------------------------------------------------------
diff = mean(Domestic) - mean(Foreign) t = -3.6308
Ho: diff = 0 degrees of freedom = 72

Ha: diff < 0 Ha: diff != 0 Ha: diff > 0


Pr(T < t) = 0.0003 Pr(|T| > |t|) = 0.0005 Pr(T > t) = 0.9997

A partir de esta prueba hemos establecido que los carros domésticos en 1978 tenían un menor
millaje de gasolina que los carros extranjeros.

Tablas

Ahora, lo que queremos es saber el número de carros domésticos y extranjeros.

. tabulate foreign

Car type | Freq. Percent Cum.


------------+-----------------------------------
Domestic | 52 70.27 70.27
Foreign | 22 29.73 100.00
------------+-----------------------------------
Total | 74 100.00

La base de datos contiene la variable rep78 que a registrar la frecuencia de mantenimiento para
cada caso (1 = mala, ..., 5 = excelente). ¿Cómo ha sido el mantenimiento de los carros de la
muestra?

. tabulate rep78

Repair |
Record 1978 | Freq. Percent Cum.
------------+-----------------------------------
1| 2 2.90 2.90
2| 8 11.59 14.49
3| 30 43.48 57.97
4| 18 26.09 84.06
5| 11 15.94 100.00
------------+-----------------------------------
Total | 69 100.00

Tenemos 74 carros, sólo 69 tienen registrada la variable rep78 . Queremos conocer los carros
para los cuales esta información no existe.

65
Stata 10.0 para economistas
Humberto Ortiz Ruiz

. list make if rep78>=.

+---------------+
| make |
|---------------|
14. | Plym. Sapporo |
17. | Buick Opel |
23. | Pont. Phoenix |
27. | AMC Spirit |
72. | Peugeot 604 |
+---------------+

Nota: list make if rep78>=. es equivalente a list make if missing(rep78)

Queremos saber si existen también diferencias entre las frecuencia de mantenimiento


explicadas por el origen de fabricación. Comparemos los registros para los carros domésticos y
extranjeros, es decir, hagamos una tabla en la que comparemos dos variables rep78 y foreign.

. tabulate rep78 foreign

Repair |
Record | Car type
1978 | Domestic Foreign | Total
-----------+----------------------+----------
1| 2 0| 2
2| 8 0| 8
3| 27 3| 30
4| 9 9| 18
5| 2 9| 11
-----------+----------------------+----------
Total | 48 21 | 69

Parece que los carros domésticos tienen una menor frecuencia de mantenimiento. A
continuación, queremos determinar si esta diferencia es estadísticamente significativa. Para ello
realizaremos un test chi2 (a pesar de que no se cumple la condición de que debe haber como
mínimo cinco observaciones en cada celda de la tabla).

. tabulate rep78 foreign, chi2

Repair |
Record | Car type
1978 | Domestic Foreign | Total
-----------+----------------------+----------
1| 2 0| 2
2| 8 0| 8
3| 27 3| 30
4| 9 9| 18
5| 2 9| 11
-----------+----------------------+----------

66
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Total | 48 21 | 69

Pearson chi2(4) = 27.2640 Pr = 0.000

Hemos encontrado que la frecuencia de mantenimiento es diferente de por el origen de


fabricación. Podemos inferir que los carros domésticos tenían un menor nivel de mantenimiento
en 1978.

Matrices de correlacion

¿Cuál es la correlación entre MPG y el peso de un carro?

. correlate mpg weight


(obs=74)

| mpg weight
-------------+------------------
mpg | 1.0000
weight | -0.8072 1.0000

Comparemos esta correlación para los carros domésticos y extranjeros:

. correlate mpg weight if foreign==0


(obs=52)

| mpg weight
-------------+------------------
mpg | 1.0000
weight | -0.8759 1.0000

. correlate mpg weight if foreign==1


(obs=22)

| mpg weight
-------------+------------------
mpg | 1.0000
weight | -0.6829 1.0000

Nota: Podemos haber obtenido ningún resultado tipeando by foreign: correlate mpg
weight.

Podemos estimar matrices de correlación con tantas variables como querramos.

. correlate mpg weight price length displacement


(obs=74)

| mpg weight price length displa~t

67
Stata 10.0 para economistas
Humberto Ortiz Ruiz

-------------+---------------------------------------------
mpg | 1.0000
weight | -0.8072 1.0000
price | -0.4686 0.5386 1.0000
length | -0.7958 0.9460 0.4318 1.0000
displacement | -0.7056 0.8949 0.4949 0.8351 1.0000

Sabemos que el millaje promedio entre los carros domésticos y extranjeros es diferente. Hemos
visto también que el origen de fabricación explica otras diferencias, tales como la frecuencia de
reparación. Por otro lado, hemos encontrado una correlación negativa entre MPG y el peso del
carro (como era de esperarse) pero esta correlación parece ser más fuerte cuando analizamos
carros domésticos. A continuación examinaremos, con la intención de más adelante modelar, la
relación entre MPG y el peso. Comenzaremos graficando un ploteo simple

Para crear gráficos seguimos un procedimiento similar. Desde el menú principal:


Graphics/Easy graphs/Scatter plot, y en el cuadro de diálogo, con el cursor en la casilla X
variable pulsamos mpg y en la casilla Y variable pulsamos weight. Luego de pulsar el botón
OK, nos mostrará la siguiente pantalla.
40 30
Mileage (mpg)
20
10

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


Weight (lbs.)

Tambíen podemos tipear la siguiente orden:

. scatter mpg weight

scatter y x dibuja un gráfico de y contra x. Notamos que la relación a primera vista no es lineal.

68
Stata 10.0 para economistas
Humberto Ortiz Ruiz

A continuación, realizaremos dos gráficos separados para los carros domésticos y extranjeros.

. sort foreign

. 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

La relación no es únicamente no lineal, sino que también parece diferir para los carros
domésticos y extranjeros.

69
Stata 10.0 para economistas
Humberto Ortiz Ruiz

70
Stata 10.0 para economistas
Humberto Ortiz Ruiz

2. Introducción a la programación: algunas herramientas y comandos útiles

2.1. Macros local y global

Una herramienta básica en la programación en STATA es el uso de las macros que permiten
realizar el trabajo de forma más eficiente. Se puede ver una macro en STATA como un “alias”
que tiene un nombre y un valor. Cuando el nombre de una macro es referenciado se puede
obtener su valor.

Una macro puede contener cualquier combinación de caracteres alfanuméricos y puede


contener hasta 8000 caracteres. El valor de una macro puede ser modificado por otro comando.

Existen dos tipos de macros en STATA definidas como local y global. El contenido de las
macros global es definido mediante el comando global mientras que en el caso de las macros
local es definido con el comando local.

Las macros local existen sólo en el programa (ado) o el do-file definido. Es decir, si se abre otro
programa o do- file las macros local utilizadas con anterioridad no estarán disponibles. La macro
local es un contenido que puede mantener un objeto (como un nombre de una variable o un
número) o un conjunto de objetos.

Ejemplo

local paises PER ARG PAR MEX


di "`paises'"

Las macros global existen para la duración de un programa o una sesión de STATA. Otra
diferencia con respecto a las macros local es que la forma como se referencian.

Ejemplo

local paises PER ARG PAR MEX


di "$paises"

Las macros global son utilizadas frecuentemente para guardar los ítems paramétricos de un
programa, como puede ser un carácter string que contenga el nombre del directorio “defult” en
donde las bases de datos o los do-files serán accesados. A menos que sea necesario, se
recomienda utilizar macros local.

Las macros de STATA son útiles para construir listas, contadores o índices de enlace (loop
indices). Su uso puede ser extendido para retomar valores de los comandos de STATA (ver
return).

Se pueden utilizar una serie de funciones macro que pueden ser útiles para extraer etiquetas de
una variable, extraer el número de columnas o filas de una matriz, entre otros.

Ejemplo

71
Stata 10.0 para economistas
Humberto Ortiz Ruiz

cd "…"
use auto
local x1: type labor

2.2. Enlazando variables: forvalues y foreach

STATA permite utilizar un solo comando en vez de distintos comandos para realizar
modificaciones a los valores de una variable y enlazar variables que tienen un contenido similar.
Las herramientas más potentes son los comandos forvalues y foreach.

La sintaxis de estos comandos es muy familiar para usuarios de C y otros lenguajes de


programación modernos. No se suele utilizar en mayor medida otros comandos como for (en
desuso) o while (que requiere especificar un contador como una macro local).

El comando forvalues permite enlazar valores consecutivos, repitiendo un conjunto de macros


local a cada elemento definido en el “rango” y ejecuta los comandos que se colocan entre
corchetes.

Ejemplo

forvalues i=1(1)5 {
display `i'
}

Se define la macro local i como un índice de enlace, siendo el rango 1(1)5. Se ejecutará el
comando entre corchetes para cada valor en el rango. Asimismo, el rango se puede definir de
distintas maneras.

Ejemplo

forvalues i=1/5 {
display `i'
}

El límite del rango se puede establecer mediante una macro.

Ejemplo

local n 5
forvalues i=1/`n' {
display `i'
}

Ejemplo. Si se tienen 4 variables x1, x2, x3 y x4

forvalues i=1/4 {
generate double lnx`i'=log(x`i')
summarize lnx`i'
72
Stata 10.0 para economistas
Humberto Ortiz Ruiz

El comando forvalues suele utilizarse para enlazar variables que tienen un componente
numérico (entero) común consecutivo. En otros casos se suele utilizar el comando foreach.

El comando foreach repite un conjunto de macros local a cada elemento de la lista (que
incluyen macros local y global) y ejecuta los comandos que se colocan entre corchetes. Como
en el caso de forvalues una macro local es definida como un índice de enlace. El loop es
ejecutado 0 o más veces, ejecutándose desde 0 si es que la lista está vacía. En vez de realizar
el ciclo de acciones sobre un conjunto de valores numéricos foreach especifica que el indice
loop itera a través de los elementos de la macro local o global, de los nombres de la variables
especificadas (varlist) o de los elementos explícito de elementos (numlist).

Ejemplo

foreach z in PER ARG PAR MEX {


generate double lnx`z'=log(x`z')
summarize lnx`z'
}

El comando foreach puede trabajar con una lista de variables específicas varlist, un newvarlist
de las variables que crea y un listado explícito de elementos numlist.

foreach z of varlist x* {
summarize ln`z'
}

2.3. Escalares y matrices

2.3.1. Escalares

STATA utiliza escalares y matrices. Los escalares pueden contener valores string (hasta 244
car5.1.2.acteres6) o un único valor numérico. Los comandos de análisis (describe, summ, entre
otros) de STATA dan los resultados como escalares numéricos (ver return). Adicionalmente, los
escalares pueden ser utilizados para guardar resultados numéricos.

Ejemplo

scalar root2=sqrt(2)

En el cálculo numérico es más fácil utilizar escalares. Si una macro contiene valores numéricos
estos deben ser convertidos previamente, mientras que en el caso de los escalares no se
requiere de ninguna transformación. Un escalar opera como una expresión. Es decir, no se
puede especificar un escalar como parte de un rango, in range, en la medida que ningún valor
será extraído. Se debe utilizar if exp desde que contiene una expresión numérica.

6
La extensión de una macro en la versión Intercooled es 67.789 mientras que en la versión SE es más de 1 millón.

73
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Los comandos de estimación de STATA (reg, xtreg, entre otros) crean tanto escalares como
matrices. Por ejemplo, con el comando reg se crea la matriz e(b) que contiene los estimadores
de los parámetros, e(V) que contiene la matriz de varianzas y covarianzas de los estimadores.

2.3.2. Matrices

STATA ha desarrollado un lenguaje matricial que soporta un amplio rango de operaciones


matriciales. Adicionalmente desde la version 9 STATA provee un lenguaje matricial que opera
en un ambiente separado, MATA.

Con los comandos matrix tradicionales el tamaño de las matrices es limitado según las distintas
versiones del STATA. Asimismo STATA posee de comandos especializados como matrix
accum que calcula productos cruzados de matrices de cualquier número de observaciones.
Hay también otras variaciones de dicho comando como matrix glsaccum, matrix vecaccum y
matrix opaccum.

matrix accum A = price weight mpg


matrix list A

Las matrices en STATA son útiles para guardar los resultados. También son una forma de
presentar la información de manera organizada.

Muchas operaciones no pueden ser realizadas con los comandos matrix tradicionales. Por
ejemplo si bien el comando matrix mkmat permite crear una matriz a partir de una lista de
variables el número de observaciones de la matriz es limitado. Por otro lado, los comandos
clásicos y los del lenguaje MATA y en general cualquier lenguaje matricial tiene limitaciones a la
hora de trabajar con expresiones matriciales complejas (panel, SUR, entre otros) sobretodo si
se consideran la memoria disponible en la PC. En estos casos es preferible trabajar con enlaces
que permitan simplificar el cálculo matricial. Por ejemplo en vez de realizar el cálculo matricial
para estimar un SUR se puede generar un loop en donde se regresiones distintas ecuaciones,
los dos procedimientos dan el mismo resultado pero el último no requiere de tantos recursos
informáticos.

2.4. Comandos return y ereturn

Los principales comandos de análisis de STATA, incluidos los nuevos comandos que el propio
usuario define, pueden ser clasificados en las siguientes clases:

• r-class: comandos diversos (excluidos los de estimación) tales como table, sumaries,
entre otros.

• e-class: comandos de estimación como regress, xtreg, entre otros que estiman modelos
estadísticos.

Cada clase de comando determina si los resultados son guardados en r() o e(). Existen otras
clases s-class, n-class y c-class que se utilizan con menor frecuencia (véase h return).

74
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Con el comando return (ereturn) list se pueden ver los elementos guardados en r() ( e())
correspondiente a los comandos de clase r (e).

Ejemplos

cd "..."
use auto
des
return list

La ejecución consecutiva de comandos r-class reemplazarán la lista return con los respectivos
valores de return. Si se quiere trabajar con dichos item estos se tienen que guardar como
macros local o como escalares.

summ mpg
return list
di "La media estandariza es `r(mean)'/`r(sd)'"

La mayoría de comandos e-class retornan cuatro tipos de objetos de STATA: escalares,


macros, matrices y una función de STATA e(sample) que asigna 1 a cada observación incluida
en la estimación y 0 en otro caso.

reg mpg weight foreign


ereturn list

75
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3. Modelo de regresión lineal clásico

3.1. Introducción

El modelo de regresión lineal especifica la media condicional de una variable respuesta


(endógena) como una función lineal de k variables independientes

E ( y / x1 , x2 ,..., xk ) = β1 x1 + β 2 x2 + ... + β k xk

El modelo de regresión lineal predice los valores promeido de y para distintos valores de
x1 , x2 ,..., xk . Los parámetros (de la población) β1 , β 2 ,..., β k no son conocidos. Sin embargo,
utilizando la información muestral se pueden obtener estimadores de los parámetros (o
coeficientes).

Por ejemplo, se puede suponer que el valor medio de los precios de casas de una sola familia
condional al ratio entre estudiantes
50000
precio promedio de casa unifamiliar
40000
30000
20000
10000
0

12 14 16 18 20 22
promedio de ratio estudiante/profesor
median housing price, $ Fitted values

Utilizando la información muestral se debe obtener:

76
Stata 10.0 para economistas
Humberto Ortiz Ruiz

- buenos estimadores de los coeficientes,

- determinar como los estimados cambian si se tiene otra muestra de la misma población,

- analizar si hay suficiente evidencia no tomar algunos valores de los coeficientes

- utilizar los estimadores para interretar el modelo.

Para obtener estimadores de los parámetros de interés se deben realizar algunos supuestos
sobre el proceso generador de los datos. El modelo de regresión lineal clásico para unidad de
corte transversal “i”, es:

yi = β1 + β 2 xi ,2 + ... + β k xi , k + ui

Donde i=1,..N y ui es una perturbación aleatoria con varianza ( σ u2 ) desconocida. Se puede


reescribir en forma matricial:

y = Xβ + u

Un supuesto que se suele plantear es:

E (u/x) = 0

Lo que implica que

E (x ' u ) = 0

Luego se tiene que

−1
β = [ E (x'x)] E (x'y )

77
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Utilizando el principio de analogía, tenemos:

−1
 N   N 
 ∑ xi'xi   ∑ x'y  −1
βˆ =  i   i  = ( X ' X ) X'y
 N   N 
   

¿Qué supuesto se está planteando?

Los residuos se pueden calcular como

ˆ ´
uˆ = y − βX

Luego se puede plantear un estimador s2 para la varianza del término de perturbación.

En muestras pequeñas (o muestras finitas) se consideran propiedades deseables de los


estimadores la insesgadez y la eficiencia. Mientras que en muestras grandes (teoría asintótica),
se prefieren los estimadores que son consistentes.

Al momento de derivar la distribución muestral del estimador MCO β̂ se suele realizar un


supuesto adicional, que los ui son iid con varianza finita σ u2 . En muestras grandes se puede
demostrar que bajo los supuestos antes mencionados el estimador MCO β̂ tiene una
distribución normal (se distribuye asintóticamente como normal) con media β y varianza
σ u2Q −1 . Un estimador consistente para σ u2Q −1 es s 2 (X'X)−1 . Por otro lado, bajo iid se mantiene
el teorema Gauss-Markov.

78
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Comandos de estimación en STATA

En lo que se refiere a procesamiento de información STATA ofrece una amplia gama de


posibilidades. Lo más importante es que los comandos para las diferentes técnicas de
estimación comparten las siguientes características:

1. Usted puede usar la sintaxis de Stata para especificar la muestra de estimación sin tener
que crear una base de datos especial.

2. Usted puede revisar en cualquier momento las últimas estimaciones escribiendo el comando
de estimación.

3. Todos los comandos de estimación muestran los intervalos de confianza para los
coeficientes y permite que la opción level ( ) indique el tamaño del intervalo. Por defecto es
level (95), que significa intervalos de confianza al 95%. Usted puede reajustar el intervalo de
confianza con set level. Vea level en help.

4. Usted puede utilizar mfx para mostrar los resultados del modelo en términos de los efectos
marginales (dy/dx o incluso df(y)/ d(x)), que se pueden exhibir como derivadas o
elasticidades. Vea mfx en help.

5. Usted puede obtener tablas de medias ajustadas; vea adjust en help.

6. Usted puede obtener la matriz de varianza-covarianza de los estimadores (VCE) presentado


como matriz de correlación o covarianza usando vce en cualquier momento después de la
estimación. Vea vce en help. (Usted puede obtener también los coeficientes estimados y la
matriz de covarianza haciendo referencia al e (b) y e (V)).

7. Usted puede obtener predicciones, residuos, y similares, tanto para los datos que acaba de
estimar como para otros datos, usando predict. Vea en help predict.

8. Usted puede obtener predicciones no lineales, sus errores estándar, estadísticas del
Contraste de Wald, niveles de significancia e intervalos de confianza, tanto para los datos
que acaba de estimar como para otros datos, usando predictnl; vea predictnl en ayuda para
mas información. Una característica útil de predictnl es que usted puede obtener los errores
estándar para más predicciones disponibles vía predict, y puede también obtener errores
estándar de funciones y combinaciones de esas predicciones.

9. Usted puede referir a los coeficientes y a los errores estándar en expresiones (tales como
generate); vea [U] 16.5 Accessing coeficientes and Standard errors.

10. Usted puede realizar pruebas en los parámetros estimados usando test (Contraste de Wald
para hipótesis lineales), testnl (Contraste de Wald para hipótesis no lineales), lrtest
(Contraste del ratio de verosimilitud), hausman (Prueba de especificación de Hausman), y
suest (generalización de la prueba de Hausman, y más). Usted también puede obtener
puntos estimados e intervalos de confianza para combinaciones lineales de parámetros
estimados usando lincom, o para combinaciones no lineales usando nlcom.

11. Usted puede almacenar los resultados de la estimación usando estimates store. Estos
resultados pueden ser restaurados, reutilizados, los coeficientes de una estimación o más

79
Stata 10.0 para economistas
Humberto Ortiz Ruiz

pueden ser combinados en una tabla, etc. Ver estimates en help. También se proporciona
otra herramienta que maneja los resultados de la estimación almacenados; ver _estimates
en help.

Además,

1. Muchos comandos de estimación tienen una opción robust que proporciona el


Huber/White/Sandwich estimador o varianza. Los comandos de estimación que
proporcionan esto también proporcionan una opción cluster() que relaja el supuesto de
independencia. Ver [U] 23.14 Obtaining robust variance estimates.

2. Muchos comandos de estimación pueden ser usados con el prefijo sw para realizar
stepwise estimation, ver sw en help.

80
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.2. Aplicación

La base de datos hprice2a.dta contiene información sobre el precio de casas ubicadas en 506
localidades de Boston. El objetivo es analizar que factores afectan a al logaritmo de precio
promedio de casas unifamiliares. Para ello se cuenta con información de factores relacionados
directamente al stock de casas como el número promedio de cuartos por casa (room) y
factores que impactan de manera indirecta (factores externos) al precio de las casas como la
contaminación del aire (medido por lnox), la distancia de una localidad a los centros laborales
(ldist), el ratio promedio de estudiantes/profesores en las escuelas locales (stratio).

Para realizar una estimación MCO tradicional en STATA se utiliza el comando regress. La
sintaxis del comando es:

regress depvar [varlist] [weight] [if exp] [in range] [, level(#) beta robust cluster(varname)
score(newvar) hc2 hc3 hascons noconstant tsscons noheader eform(string)
depname(varname)mse1 plus ]

La estimación se puede realizar de varias formas: utilizando las ventanas emergentes o


digitando en la barra de comando.

Para efectuar cualquiera de los métodos de estimación posibles en Stata 10.0 utilizando las
ventanas emergentes debemos partir del menú Statistics. Además de los múltiples métodos de
estimación disponibles, podemos definir nuestros propios comandos desde el menú User, tal
como veremos en una sesión subsiguiente.

Para el caso de la estimación por MCO, desde el menú principal: Statistics/Linear regression
and related/linear regresión. En el cuadro de diálogo respectivo ingresamos la variable
dependiente lprice y las explicativas, que en este caso son: lnox, ldist, rooms, stratio

81
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Nota : Una forma alternativa de incluir las variables del modelo de regresión en el cuadro de
diálogo es haciendo clic sobre ellas.

Para estimar por MCO podemos ingresar directamente el comando:

Nota : En general todos los métodos de estimación en Stata 10 son similares, por lo que si
conocemos teóricamente un método de estimación la implementación mediante estos cuadros
de diálogo es muy simple. Además los procesos estadísticos luego de la estimación (intervalos
de confianza, prueba de hipótesis, etc) son similares en todas las metodologías. Stata puede
estimar varios tipos modelos, incluyendo la regresión logística, la regresión de Cox para riesgos
proporcionales, etc.
82
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Al aplicar el comando reg aparece en la ventana de resultados la tabla ANOVA (análisis de la


varianza), estadísticos de bondad de ajuste, la estimación del modelo y los test de hipótesis.

En la regresión hay dos fuentes de varianza, model y residual. En la tabla ANOVA se presentan
la suma de los cuadrados, los grados de libertad y la media esperada al cuadrado (división de
los dos anteriores).

Entre los estadísticos de bondad de ajuste más utilizados están R2, el R2 ajustado, y criterios de
información como Akaike y el Bayesiano o Schwarz. Las tres últimas medidas toman en cuenta
la bondad de ajsute del modelo y su parsimonía.

En el output se reporta los estimadores, sus errores estándar, los t estadísticos, el p-value
ahocicado a la hipótesis de βi = 0 y los intervalos de confianza a un nivel de confianza de 95%
(establecido por default). Se puede cambiar los niveles de confianza con la opción level().

STATA tiene la opción de reportar los “coeficientes beta”, tulizados en algunas disciplinas
sociales, que son definidos como ∂y * / ∂x * con y* = ( y − y ) / s y y x* = ( x − x ) / sx .

El comando reg es del tipo e-class. Se pueden recuperar distintos resultados del modelo
estimado:

83
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Con el comando estat se puede ver varios resultados luego de cualquier comando de
estimación como la matriz de varianzas y covarianzas, los estadísticos de información, entre
otros.

Los resultados del modelo estimado se pueden guardar utilizando el comando estimates store.
Adicionalmente se pueden organizar distintas ecuaciones estimadas a través del comando
estimates table.

84
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.3. Colinealidad y análisis VIF

Hay grados de colinealidad entre las variables explicativas. Si al menos una variable es
perfectamente colineal con el resto de variables explicativas la matriz X’X será singular y no se
podrá relizar la estimación. STATA reconoce la colinealidad perfecta pero es difícil analizar
colinealidad cercana.

En el caso que exista colinealidad perfecta STATA elimina las variables hasta que la matriz X’X
sea numéricamente invertible. La colinealidad cercana se da cuando las correlaciones parciales
son altas o hay presencia de dependencias cercamente lineales en la matriz X. El no
cumplimiento del rango completo de X es un problema de la muestra. En el caso de colinealidad
cercana pequeños cambios en la matriz X generan cambios importantes en los coeficientes
estimados. El ajuste del modelo será bueno pero los coeficientes tendrán errores estándar
elevados, coeficientes con magnitudes elevadas o con signos incorrectos.

Para analizar la colinealidad se suele utlizar distintos diagnósticos entre ellos el VIF o variante
inflator factor el cual se define como (1 − Rk2 ) −1 .

Para detectar colinealidad cercana en una regresión se puede utilizar la condición de numero de
X’X que mide la sensibilidad de los estimadores ante variaciones en X. Una condición de
número elevada indica que pequeños cambios en X puenden generar importantes cambios en
los estimadores. Besley propone que una condición de número superio a 20 es indicio de
colinealidad cercana. Por otro lado, no hay un test estadístico que permita analizar si la
condición de rango se cumple.

Si el análisis VIF indica que hay colinealidad se debe ver si esta afecta o no a los estimadores.
Debemos tomar en cuenta que muchas variables macroeconómicas están intecorrelacionadas.
Si la colinealidad afecta adversamente a la ecuación de regresión se pueden seguir dos
caminos: (i) especificar nuevamente el modelo de forma tal de reducir la dependencia lineal de
las explicativas o (ii) adquirir una muestra más grande y mejor.

85
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.4. Pruebas de hipótesis

Se pueden realizar una serie de pruebas de hipótesis a los estimadores del modelo de
regresión. Los test mñas populares en eocnometria son el test de Wald, multiplicadores de
Lagrange (LM) y el test rario verosimilitud (LR). Un conjunto de purebas de hipótesis se pueden
formular mediante la comparación del modelo irrestricto y del modelo restricto. El test de wald
compara el modelo restricto y del irrestricto con el objetivo de analizar si hay evidencia de que
las restricciones planetadas no se cumplen. El test LM evalúa si los estimadores puntuales
restrictos pueden reproducir los estimadote irrestricstos. El test LR ebvalúa la función objetivo
del modelo restricto y del irrestricto.

STATA tiene tres comandos útiles para probar una serie de hipótesis para restricciones lineales
luego de una regresión: test, testparm y lincom.

Para realizar una serie de pruebas de hipótesis individuales utilizando el test de Wald:

Hipótesis que involucran combinaciones lineales

Y también hipótesis conjuntas:

En STATA es relativamente sencillo estimar un modelo con restricciones lineales.

86
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Las test antes desarrollados involucran restricciones lineales a los parámetros que son objeto
de estudio. Sin embargo, en algunas situaciones es necesario probar hipótesis que involucran
restricciones no lineales. STATA tiene dos comandos para evaluar hipótesis con restricciones
no lineales testnl y nlcom. Ambos comandos usan el método delta para construir test de tipo
Wald. Estos test son sensibles a la escala de las variables consideradas en el modelo de
regresión.

En algunos casos es necesario comparar modelos que no están anidados. Es decir se quiere
realizar la siguiente prueba de hipótesis:

H 0 : y = xβ + ε 0
H1 : y = zγ + ε1

El test incorpora dicha hipótesis. Dicho test fue porpuesto por Davidson y MacKinnon (1981). El
test J se basa en la siguiente idea: si el modelo 0 tiene mejor poder explicativo que 1 el modelo
0 es superior y viceversa. Un test similar es el propuesto por Cox-Pesaran-Deaton el cual se
basa en un test ratio verosimilitud.

87
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.5. Predicción

Luego de estimar la regresión se pueden calcular los residuos o los valores predichos. Los
residuos de cada observación permiten evaluar si el modelo de regresión explica los valores de
la variable de respuesta para cada observación. Adicionalmente se pueden obtener
predicciones dentro de la muestra y fuera de esta. Si el modelo está bien especificado debería
generar predicciones razonables para cualquier muestra de la población.

El comando para calcular los residuos o los valores predichos es predict,

predict [type] newvar [if] [in] [, single_options]

La regresión estimada solo estará disponible para predict hasta que el próximo comando de
estimación sea utilizado.

Una forma de evaluar la calidad de la estimación es gráficamente. En una regresión con


multiples regresores, un ploteo de los valores actuales de y versus los valores predichos ŷ
11
Prediccion del log precio promedio
9 9.5 8.5 10 10.5

8.5 9 9.5 10 10.5 11


Log de precio promedio

88
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Se puede calcular intervalos de confianza para la predicción (o intervalos de predicción). Se


suelen utilizar dos definiciones de predicción: el valor predicho y el pronóstico o error de
predicción.

Dado un valor x0 el valor predicho será igual a:

E ( y / x 0 ) = x 0β = y0

Con una varianza igual a:

Vˆp = s 2 x 0 (X'X)-1 x 0'

Mientras que dado un valor x0 para un valor y0 el error de predicción será (forecast error):

eˆ0 = y0 − yˆ 0

Con una varianza igual a

Vˆp = s 2 x 0 (X'X)-1 x 0' + s 2

Se pueden obtener intervalos de confianza tanto para el valor predicho como para el pronóstico.
11
Log price actual y predicho
10 9.5 10.5

1.4 1.5 1.6 1.7


log(nox)

log(price) Pred intervalo de predicción 95%

89
Stata 10.0 para economistas
Humberto Ortiz Ruiz

El objetivo de algunos estudios es obtener predicciones fuera de la muestra para la variable


dependiente. En este caso se podría utilizar los intervalos de confianza del pronóstico (forecast)
para evaluar la prediccion fuera de la muestra y probar si ha sido generado por el proceso que
generó el modelo estimado.

90
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Comando Predict

Predict calcula predicciones, residuos y otros estadísticos posteriores a la estimación. Lo que


predict puede hacer exactamente es determinado por previos comandos de estimación; las
opciones de comandos específicos son documentados por cada comando de estimación. Sin
importar las opciones de comando específicos, las acciones de predict comparten ciertas
similitudes entre los comandos de estimación:

1) Tipeando predict “newvarname” crea newvarname conteniendo “los valores predichos” –


números relacionados con el E (yj/xj). Por ejemplo, después de la regresión lineal,
predict newvarname crea xjb y, después de probit, crea la probabilidad Φ (xjb).
2) Predict newvarname, xb crea newvarname que contiene xj b.
3) Predict newvarname, stdp crea newvarname conteniendo los errores estándar de la
predicción lineal Xjb.
4) Predict newvarname, other_options podrá crear newvarname conteniendo otras
cantidades útiles; ver help o el manual de referencia del comando de estimación
particular para encontrar otras posibles opciones.
5) En general, predict calcula el estadístico requerido para todas las posibles
observaciones, si estos fueron usados en calcular el modelo o no. predict hace esto para
opciones estándar (1) hasta (3), y generalmente hace esto para opciones de
estimadores específicos (4).
6) Para restringir la predicción de la submuestra estimada, tipear :
Predict newvarname if e(simple),…
a. Algunos estadísticos tienen sentido solo con respecto a la submuestra estimada.
En tales casos, el cálculo es automáticamente restringido para la submuestra
estimada, y la documentación para la opción específica indica esto. Aún así,
usted puede especificar if e(simple) si tiene dudas.
7) La habilidad del comando predict para hacer predicciones fuera de la muestra se
extiende incluso a otra base de datos. En particular, usted puede:
. use ds1
. (calcule un modelo)
. use two /*otra base de datos */
. predict, hat…. /*complete las predicciones */

91
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.6. Efectos marginales

El comando mfx calcula los efectos marginales luego de una estimación puntual o por
intervalos:

mfx [if] [in] [, options]

Con el commando mfx se pueden calcular los efectos marginales, las elasticidades y
semielasticidades, medidas de interés en el análisis económico. Los efectos son calculados en
el valor medio de las variables por default.

Si estimamos la version del modelo en niveles

Se tienen las siguientes elasticidades

Se puede realizar una serie de estudios con los resultados del comando mfx. Por ejemplo se
puede analizar como varía la elasticidad para distintos valores de las variables explicativas
como se muestra en el gráfico siguiente.

92
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Elasticidad de precio vs ratio estudante / profesor


-.5

Precio promedio predicho


-1

2000022000240002600028000
-1.5

12 14 16 18 20 22
Ratio estudiante/profesor (percentiles 1 10 25 50 75 90 99) ...

Elasticidad IC 95%
Precio promedio predicho

93
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.7. Especificación de la forma funcional

Uno de los supuestos realizados en el apartado 4.2. tiene que ver con la forma funcional. Se
asumió que la forma funcional fue correctamente especificada. Al respecto si el supuesto:

E (u / x1 ,..., xk ) = 0

No se cumple luego los estimadores serán inconsistentes. Hay tres problemas que generan el
no cumplimiento del supuesto:

- Especificación no adecuada del modelo.


- Endogeneidad de uno o más regresores.
- Errores de medida de uno o más regresores.

La especificación de un modelo tiene que ver con los regresores incluídos en el modelo de
regresión y la forma funcional especificada. La consistencia de los estimadores requiere que la
función muestral especificada corresponda con la función de regresión poblacional. Al respecto
la teoría económica muchas veces indican algunas guías de cómo debe ser la forma funcional
pero no precisa explícitamente como se deben especificar las variables o como deben entrar al
modelo los elementos estocásticos.

Se asume que la especificación empírica debe diferir de la función de regresión poblacional en


una de las siguientes formas: la omisión de variables en el modelo y la inclusión de variables
irrelevantes al mismo. En el caso de variables omitidas tenemos que los estimadores serán
inconsistentes. Mientras que en el caso de variables redundantes no afecta la consistencia.

4.7.1. Análisis gráfico y ploteo añadido

Una primera aproximación para ver la relación funcional de las variables es con el análisis
gráfico. En el caso de un modelo multivariado, el ploteo bivariado puede ser útil.

94
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.5 2 2.5 4 6 8
11

10
log(price)
9

8
2.5

2
log(nox)

1.5
3

2
log(dist)
1

0
8
avg
number of
6 rooms per
house
4

20
average
student-teacher 15
ratio
10
8 9 10 11 0 1 2 3 10 15 20

Otra herramienta útil son los ploteos de variable añadida. Este tipo de ploteos identifican
variables importantes en una relación a través de la descomposición de una relación
multivariada en ploteos de dos dimensiones.

El ploteo de variable añadida se basa en dos residuos. Un residuo (e1) de la regresión entre xg
y el resto de variables explicativas y otro residuo (e2) de la regresión de y con respecto a todos
los regresores excepto xg. Si la la pendiente de la relación lineal entre los residuos es
significativamente distinta a cero luego xg dará una contribución importante al modelo en adición
al resto de variables. Con el comando avplot se puede realizar este análisis.

95
Stata 10.0 para economistas
Humberto Ortiz Ruiz
-1 -.5 0 .5 1 1.5

-1 -.5 0 .5 1 1.5
e( lprice | X )

e( lprice | X )
-.2 -.1 0 .1 .2 .3 -1 -.5 0 .5 1
e( lnox | X ) e( ldist | X )
coef = -.66156942, se = .12016057, t = -5.51 coef = -.09508697, se = .04214348, t = -2.26
-1 -.5 0 .5 1 1.5

-1 -.5 0 .5 1 1.5
e( lprice | X )

-.6 -.4 -.2 0 .2 e( lprice | X ) -2 0 2 4 6 8


e( rooms | X ) e( rooms2 | X )
coef = -.56256622, se = .1610315, t = -3.49 coef = .06343469, se = .01246208, t = 5.09
-1 -.5 0 .5 1 1.5

-1 -.5 0 .5 1 1.5
e( lprice | X )

e( lprice | X )

-5 0 5 -1 -.5 0 .5
e( stratio | X ) e( lproptax | X )
coef = -.03629279, se = .00606988, t = -5.98 coef = -.22111248, se = .04102017, t = -5.39

En la medida que hay asimetrías en los errores de especificación una estrategia adecuada sería
empezar con una especificación general y refinar el modelo imponiendo restricciones
adecuadas. La estrategia de simplificación recursiva es preferible.

4.7.2. Error de especificación en la forma funcional

Un modelo que incluya variables explicativas adecuadas puede estar erróneamente


especificado (misspecified) si el modelo no representa la forma algebraica de la relación entre
las variables endógenas y explicativas.

En el contexto descrito, se puede analizar el error de especificación a través de un test de


variables omitdas como el de Ramsey.

El test de Ramsey parte de la idea de que si la forma funcional de la relación entre y, x es no


lineal luego una función lineal trabajará razonablemente para algunos x´s pero eventualmente
puede no funcionar. STATA calcula dicho test.

96
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Si especificamos nuevamente el modelo, incluyendo las variables rooms2 y lproptax tenemos

4.7.3. Ploeto de residuales

Otra forma de analizar si la especificación es adecuada es utilizar los ploteos de los residuos. Si
los residuos muestran un patrón puede ser signo de error en la especificación.
1.5
1 .5
Residuals
0 -.5
-1

9.5 10 10.5 11
Fitted values

97
Stata 10.0 para economistas
Humberto Ortiz Ruiz

1.5
1 .5
Residuals
0 -.5
-1

0 .5 1 1.5 2 2.5
log(dist)

4.7.4. Términos de interacción

Otra forma de error de especificación está asociada a la presencia o no de términos de


interacción. El modelo puede estar captando de manera inadecuada el impacto de una
explicativa en la variable dependiente (efecto marginal). Si los términos de interacción no son
relevantes no serán significativamente distintos de 0.

98
Stata 10.0 para economistas
Humberto Ortiz Ruiz

4.7.5. Datos influyentes

Para analizar la especificación del modelo se debe considerar evidencia con respecto a la
robustes del modelo ante la presencia de datos influyentes (influencial data). Los coeficientes
estimados pueden estar fuertemente afectados por unos pocos datos o inestabilidad estructural
en submuestras.

Hay una amplia variedad de estadísticos que analizan los datos influyentes y su relación con los
datos y el modelo predicho. Se suele denominar un outlier a una observación con un valor
inusual el cual está asociado a un residuo alto y un pobre ajuste del modelo en dicho valor7. Se
dice que una observación tiene un gran efecto “palanca” si su inclusión en la muestra altera a
los estimadores en una magnitud considerable. Observaciones con residuos elevados tendrán
un gran efecto “palanca”. Las medidas de influencia y de la identificación de las observaciones
influyentes consideran el efecto “palanca”.

Un estadístico que toma en cuenta tanto el efecto palanca como los residuos es DFITs. Un alto
valor de los residuos y un alto efecto palanca incrementan el estadístico DFIT. Dicho estadístico
evalúa el resultado de la regresión incluyendo y excluyendo cada observación. Se asume que si
DFITj > 2 k / N indica que la observación es altamente influyente.

7
Sin embargo se debe tomar en cuenta que un valor inusualmente elevado puede estar asociado a un residuo bajo en
la medida que MCO se basa en dismunir los errores al cuadrado.

99
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Si se desea analizar el efecto de las observaciones sobre el coeficiente estimado de un regresor


(l) se puede utilizar la medida DFBETA. Se considera como punto de corte DFBETA j > 2 / N

100
Stata 10.0 para economistas
Humberto Ortiz Ruiz

101
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.8. Perturbaciones no esféricas

Si los términos de perturbación no son iid, los estimadores MCO siguen siendo consistentes
pero el estimador matriz de varianza y covarianzas de los estimadores no será consistente
(¿cuál es el efecto sobre el modelo de regresión?). Se sigue asumiendo que la esperanza
condicional del error es igual a cero.

Hay dos posibles casos en donde no se cumple el supuesto iid. Cuando la varianza condicional
de los errores cambian entre observaciones, problema conocido como heterocedasticidad, el
supuesto iid no se cumple. Asimismo, cuando los errores están correlaciondos unos con otros
no estarán independientemente distribuídos, situación que se suele denominar autocorrelación.

3.8.1. Casos típicos de errores no iid

Hay tres casos especiales. El primero se suele denominar heterocedasticidad pura. Si


E (uu'/X) = Σu , la heterocedasticidad pura se da si:

 σ 12 0 ... 0 
 
0 σ 22 ... 0 
Σu = 
 ... 
 
 0 0 ... σ N2 

El segundo caso se da cuando las observaciones se pueden separar por grupos o clusters,
existiendo correlación de los errores en cada uno de los grupos pero no entre grupos.

 Σ1 0 ... 0 
 
0 Σm ... 0 
Σu = 
 ... 
 
0 0 ... Σ M 

El tercer caso es el de correlación serial y se da sobretodo en modelos de series de tiempo, en


donde los errores están relacionados con sus errores predecesores y sucesores.

 1 ρ1 ... ρ N −1 
 
2
ρ1 1 ... ρ 2 N −3 
Σu = σ u
 ... 
 
 ρ N −1 ρ 2 N −3 ... 1 

3.8.2. Heterocedasticidad

Hay tres posbiles fuentes de heterocedasticidad. En bases de datos de corte transversal de


individuos, firmas y hogares la varianza del término de perturbación está relacionada a alguna
medida de escala.
102
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Otra posibilidad es que exista heterocedasticidad entre grupos de observaciones pero


homocedasticidad dentro de cada grupo. Y una causa de posibilidad se da cuando se utliza
datos agrupados, en donde cada observación es un promeido de los datos micro.

Puede existir heterocedasticidad en datos de series de tiempo. Dicha heterocedasticidad es


tomada en cuenta en los modelos ARCH y GARCH.

3.8.2.1. Test de heterocedasticidad

En algunos contextos es razonable suponer que la varianza de la perturbación está relacionada


a la escala de medida de las observaciones individuales (heterocedasticidad por escala). En
este contexto la hipótesis se puede planear es: σ i2α ziα , donde z es laguna escala de medida
relacianda a la observación i. En este caso la varianza es proporcional a la escala de medida. Si
se puede definir la naturaleza de la proprocionalidad α , zi se podría modelar la
heterocedasticidad en un esquema eficiente como el de FGLS.

Un test muy utilizado para analizar la presencia de heterocedasticidad es el planetado por


Breush y Pagan (1979). Este es un test LM que involucra la siguiente regresión

uˆï2 = d1 + d 2 zi 2 + ... + dl zil + vi

Bajo la hipótesis nula de homocedasticidad el test se distribuye como X2 (l).

¿en qué caso el test de BP es equivalente al test White?8

No rechazar la hipótesis nula significa que no hay presencia de heterocedasticidad de la forma


especificada.

8
Cuando z=x, es decir cuando en la regresión auxiliar aparecen todas las variables explicativas del modelo. El test de
white es otro tipo de test que es igual a N*R2 de la regresión auxiliar pero involucra muchas explicativas en la
regresión auxiliar. Una forma alternativa del test de White es utilizar los valores predichos y sus cuadrados.
Disponible con el comando whitetst de ssc.

103
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Si hay presencia de hetrocedasticidad en los errores se puede utilizar el enfoque robusto,


considerando el estimador Huber-White-sandwich de la matriz de varianzas y covarianzas de
los estimadores. Si el supuesto de homocedasticidad es válido luego el estimador robusto de la
matriz var-cov será menos eficiente que el estimador s 2 (X'X) −1 .

4.8.3. Correlación serial

Es el caso de perturbaciones distribuidas de forma no independiente. También se puede dar en


el caso de corte transversal cuando los términos de perturbación de observaciones distintan se
relacionan entre sí (caso de correlación de clases). Cuando las correlaciones se presentan en
un esquema de series de tiempo se denomina correlación serial.

Existe correlación serial cuando el término de perturbación está correlacionado con sus rezagos
a través del tiempo. A diferencia de los datos de corte transversal, los datos de series de tiempo

104
Stata 10.0 para economistas
Humberto Ortiz Ruiz

tienen por la naturaleza misma de su proceso generador de datos dinámica que si no es bien
captada en el modelo ocasiona que se presente correlación serial.

Esto causa que la matriz de varianza-covarianzas de las observaciones no sea la que se asume
en MRLC, por lo que se recomienda es aplicar MCG, pero si no se conoce a ciencia cierta la
forma de esta matriz (que es el caso más común) se aplica MCGF.

Hay una serie de estadísticos que evalúan si si los errores presentan autocorrelación, es decir si
se cumple:
cov(u i , u j ) = 0
donde i ≠ j

Uno de ellos es el estadístico DW se encuentra en un rango entre 0 y 4. Como regla práctica


podemos decir que si el DW es aproximadamente 2 los errores no están correlacionados entre
si, si es cercano a cero hay evidencia de autocorrelación positiva y si es cercano a 4 de
autocorrelación negativa.

∑ (e − e
t=2
t t −1 )2
e12 + eT2
d= T
= 2(1 − r ) − T

∑ et2
t =1
∑e
t =1
2
t

e12 + eT2
d = 2(1 − r ) − T

∑e
t =1
t
2

Donde r es la autocorrelación muestral, por lo cual si la muestra es grande:

d = 2(1 − r )

Para el contraste de Durbin-Watson se emplea el siguiente diagrama en el cual se determinan


cinco intervalos:

0 dL dU 4-dU 4 - dL 4

desde 0 hasta dL Autocorrelación positiva


desde dL hasta dU Zona de indeterminación

105
Stata 10.0 para economistas
Humberto Ortiz Ruiz

desde dU hasta 4 – dU No autocorrelación


desde 4 – dU hasta 4 - dL Zona de indeterminación
desde 4 – dL hasta 4 Autocorrelación negativa

Se busca en las tablas los valores correspondientes a dL y dU, necesitándose para ello el
número de observaciones y el número de regresores sin la constante.

Godfrey y Breusch (1978) proponen una generalización al test de Durbin Watson donde la
hipótesis alternativa es que existe correlación serial de orden p. LM se distribuye
asintóticamente como una chi cuadrado con grados de libertad igual al número de variables
independientes. Este test sirve para detectar la presencia de correlación serial. La hipótesis nula
es que los errores no presentan autocorrelación.

Una variante del test de G-B es el test Q de Box y Pierce (1970) que se basa en la estimaciñon
de las primeras pautocorrelaciones muestrales de los residuos.Desde que dicho test está
basado en las correlaciones simples de los residuos antes que en las correlaciones parciales es
menos potente que el test GB9.

4.8.3.1. Aplicación

Para analizar la autocorrelación serial utilizaremos una base de datos de series de tiempo. La
base de datos ukrates.dta contiene una serie de tasas de interés de corto plazo (rs) y largo
plazo (rs20) de activos del gobierno del Reino Unido de frecuencia mensual para el periodo
1952m3-1995m12.

9
Es menos potente para rechar una H0 falsa.

106
Stata 10.0 para economistas
Humberto Ortiz Ruiz

0.15 0.10
Autocorrelations of eps
-0.05 0.00 0.05
-0.10

0 10 20 30 40
Lag
Bartlett's formula for MA(q) 95% confidence bands

4.8.3.2.Corrección

a. Por Newey West

107
Stata 10.0 para economistas
Humberto Ortiz Ruiz

b. Por Prais-Winsten (1954)

Para efectuar la corrección de autocorrelación de primer orden podemos simplemente insertar


un regresor AR(1) en la ecuación original. Otra manera es estimar ρ es reestimar el modelo
incorporando esta información.

Y = Xβ + u ,donde u t = ρu t −1 + ε t

108
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.9. Variables instrumentales

Uno de los supuestos del modelo clásico es que

E (u / x1 ,..., xk ) = 0

Dicho supuesto no se cumple en los siguientes casos: (i) endogeneidad10, (ii) sesgo de
variables omitidas y (iii) errores en las variables. En todos los casos se utiliza la misma
herramienta econométrica, el estimador de variables instrumentales (VI).

En el modelo de regresión lineal clásico se tiene que:

y = Xβ + u

Sea la matriz Z que contiene las variables instrumentales (VI) válidas, en el caso que el modelo
este exactamente identificado luego

Z ' y = Z ' Xβ + Z ' u

El estimador VI se define como

−1
βˆ VI = ( Z ' X ) Z ' y

Un estimador de VI muy utilizado es MCO 2 etapas (2SLS). Sea Znxl con l>k, el estimador 2SLS
se define como:

−1
βˆ 2 SLS = ( X ' Pz X ) X ' Pz y

−1
Con Pz = Z ( Z ' Z ) Z ' . El estimador 2SLS puede ser calculado por el comando ivregress.

3.9.1. Identificación

Los parámetros de una ecuación se dicen que están identificados cuando hay los suficientes
instrumentos válidos tales que el procedimiento 2SLS produce un único estimador. Una
ecuación estará identificada si lo están los parámetros de la misma.

El estimador 2SLS será único si se cumple la condición de rango que indica que
Rango( Z ' X )=k, siendo una condición necesaria l ≥ k. Se dice que la ecuación estará
exactamente identificada si Rango( Z ' X )=k y sobreidentificada si Rango( Z ' X )>k.

10
Determinación simulatánea de los regresores y la variable de respuesta.

109
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.9.2. Estimación por el método generalizado de momentos (GMM)

A la hora de definir la versión simple del estimador VI y el estimador 2SLS se asumió que
los errrores eran iid. Sin embargo hay otro estimador general basado en el método
generalizado de momentos que producen estimadores consistentes y eficientes en
presencia de errores no iid.

Se parte de la siguiente ecuación:

y = Xβ + u

Con E (uu '/ X) = Ω . La matriz X contiene los regresores {x1 x 2 } donde los k1 regresores
x1 son considerados endógenos y el resto exógenos.

Los instrumentos z exógenos, tales que E(zu)=0, generan los siguientes momentos:

gi ( β ) = Zi ' ui = Zi '( yi − xi β )

Los momentos muestrales serían

N N
1 1 1
g (β ) =
N
∑ gi ( β ) =
i =1 N
∑z
i =1
i '( yi − xi β ) =
N
Z 'u

El estimador GMM elegirdo será aquel que minimice:

J ( βˆGMM ) = Ng ( βˆGMM ) ' Wg ( βˆGMM )

Donde W es una matriz lxl de podenraciones.

El estimador GMM será:

−1
βˆGMM = ( X'ZWZ'X ) X'ZWZ'y

La matriz de ponderaciones óptima será W = S −1 , donde S es igual a

S = E (Z'uu'Z) = E (Z'ΩZ)

Obteniéndose

−1
βˆEGMM = ( X'ZS -1Z'X ) X'ZS -1Z'y

110
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Sea Ŝ un estimador consistente de S, se tiene que:

−1
(
βˆFEGMM = X'ZSˆ -1Z'X ) X'ZSˆ -1Z'y

3.9.3. Test de restricciones de sobreidentificación

Una propiedad importante de las variables instrumentales es la no correlación con el


término de perturbación. Se puede evaluar si un instrumento es relevante o adecuado en un
contexto de sobreidentificación con un test de restricciones de sobreidentificación.

Se pueden utilizar los test planetados por Sargan (1958) y Bassman (1960) para el caso de
la estimación 2SLS. Mientras que en el caso del procedimiento GMM se puyede utilizar el
test J planteado por Hansen (1982).

3.9.4. Test de endogeneidad

Una manera de realizar un test de endogeneidad es comparando los estimadores MCO con
los de VI mediante el test de Durbin-Wu-Hausman. En su forma general el test tiene la
siguiente forma:

H = ( βˆC − βˆe ) ' D − ( βˆC − βˆe )

Donde D = Var ( βˆC ) − Var ( βˆe ) donde Var ( βˆ ) denota el estimador consistente de la
varianza asintótica de βˆ .

El test de endogeneidad para la regresión IV es elaborado eligiendo MCO como un


estimador eficiente βˆC y a VI como un estimador ineficiente pero consistente βˆe . El test se
distribuye como un X2 con grados de libertad igual al número de regresores bajo test de
endogeneidad.

111
Stata 10.0 para economistas
Humberto Ortiz Ruiz

3.9.5. Aplicación

La base de datos a utilizar contiene una serie de variables que se utilizaron en el estudio de
los salarios de mujeres jóvenes. La función de salarios se modela como un función de las
siguientes variables: s (años de escolaridad), exp. (experiencia), tenure (ocupación laboral),
rns (número indice que indica si radica en la zona sur), smsa (indicador de urbano versus
rural) y un conjunto de dummies de años. La variable explicativa endógena es iq
(calificación IQ del trabajador) que es considerada una proxy de habilidad con errores de
medida. La variable iq es instrumentazada por 4 variables (o instrumentos): med (nivel de
educación de la madre), kww (puntuación de otro test estándar), age (años del trabajador) y
mrt (indicador del estado civil).

2SLS

112
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Test de sobreindentificación

113
Stata 10.0 para economistas
Humberto Ortiz Ruiz

114
Stata 10.0 para economistas
Humberto Ortiz Ruiz

GMM, robusto ante heterocedasticidad

Test de sobreindentificación

115
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Test de endogeneidad

116
Stata 10.0 para economistas
Humberto Ortiz Ruiz

4. Introducción al análisis de bases de datos con maestreo aleatorio complejo

4.1. Algunos comandos útiles en el manejo de bases de datos

4.1.1. Comando reshape

En el manejo de bases de datos que involucran tanto unidades de corte transversal como de
series de tiempo se pueden dar una serie de situaciones: (i) combinar bases de datos de corte
transversal o (ii) crear una base de datos con características de serie de tiempo y corte
transversal.

STATA diferencia dos tipos de formatos en bases de datos: wide format y long format. Las
bases de datos denominadas wide format son aquellas donde la misma variable en diferentes
puntos aparece como variables separadas.

state pop1970 pop1980 pop1990 pop2000 area

1. CT .1369841 .6184582 .4241557 .2648021 .871691


2. MA .6432207 .0610638 .8983462 .9477426 .4611429
3. ME .5578017 .5552388 .5219247 .2769154 .4216726
4. NH .6047949 .8714491 .8414094 .1180158 .8944746
5. RI .684176 .2551499 .2110077 .4079702 .0580662

6. VT .1086679 .0445188 .5644092 .7219492 .6759487

En las bases de datos long format la información aparece apilada, es decir la información de
una variable en distintos puntos aparece como una sola variable.

117
Stata 10.0 para economistas
Humberto Ortiz Ruiz

El comando reshape permite transformar una base de datos de formato wide a formato long (y
viserversa).

4.1.2. Combinación de bases de datos

4.1.2.1. Commando append

append using filename [, nolabel keep(varlist) ]

Une los datos en formato STATA guardados en el disco al final de la base carga en la memoria.
El nombre de la base de datos, cuyos registros serán añadidos, con using. La base de datos
creada es del tipo long.

Ejemplo

cd "..."
use phila, clear
summ
use kcity, clear
summ

use phila, clear


append using kcity
save voto2ciudades, replace

118
Stata 10.0 para economistas
Humberto Ortiz Ruiz

4.1.2.2. Commando merge

merge [varlist] using filename [, keep(varlist) unique uniqmaster


uniqusing nolabel update replace nokeep _merge(varname) ]

Une a las observaciones del archivo cargado en la memoria las observaciones de otro que está
en el disco, cuyo nombre se señala con using11.

Cuando se fusionan bases de datos con el comando merge se están agregando variables a un
registro, por lo cual es crucial saber si un registro está en la base master (la que está cargada
en la memoria) o en la bases using.

El comando merge automáticamente genera una variable _merge que toma distintos valores
dependiendo si un registro sólo esta presente en una de las dos bases o está presente en las
dos12.

Ejemplo

Ahora trabajemos con nuestra base mensual del PBI por sectores económicos. Utilizamos el
comando describe o con el comando browse, con el cual podemos verlo como una hoja de
Excel.

Esta será nuestra base de datos master. Como se muestra las variables están ordenadas por
meses.

Debemos de generar la base de datos using para hacer el correspondiente merge. La variable
que nos permitirá hacer la adecuada correspondencia entre las bases de datos será mes. En
primer lugar, las 2 bases deberán estar ordenadas por la correspondiente variable que permitirá
la asociación.

use pibmensual
sort mes
save, replace
use labels
sort mes
save, replace
clear

Luego cargamos nuestra base de datos master. Y utilizamos el comando merge para realizar la
asociación de las bases de datos:

use pibmensual
merge mes using labels
save pbi, replace

Ejercicio

11
Se utiliza ara realizar uniones 1 a 1 o de macthing (1 a muchos). Se diferencia de append ya que dicho comando
sólo incluye las observaciones de forma vertical, mientras que merge de forma horizontal.
12
_merge=1 para observaciones sólo de la base maestra, _merge=2 para observaciones sólo de la base esclava (en
memoria), _merge=3 para observaciones que están en ambas bases

119
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Suponga que usted debe consolidar la información de las siguientes bases de datos para
generar un reporte. Como parte del trabajo del investigador es acopiar y consolidar la
información, este problema es muy común.

Base1.dta base3.dta
nombre sexo micro macro nombre Sexo econometria mate
Juan 1 15 12 Juan 1 14 15
Rosa 2 14 13 Rosa 2 12 17
Ricardo 1 14 17

Base2.dta base4.dta
nombre sexo micro macro nombre sexo econometria
Helena 2 18 16 helena 2 13
Jorge 1 11 14 Jorge 1 16
Paola 2 15 Paola 2 19
Alexis 2 10 16 Alexis 2 11

La base, una vez finalizada es:

nombre sexo micro macro econom~a mate _merge


1 Alexis 2 10 16 11 . 3
2 Helena 2 18 16 13 . 3
3 Jorge 1 11 14 16 . 3
4 Juan 1 15 12 14 15 3
5 Paola 2 . 15 19 . 3
6 Ricardo 1 14 17 . . 1
7 Rosa 2 14 13 12 17 3

4.1.3. Comando collapse

collapse clist [weight] [if exp] [in range] [, by(varlist) cw fast]

El comando collapse convierte una base de datos en la memoria en una base de medias,
sumas, medianas, entre otros.

Ejemplo

A partir de la base de datos mensuales del pbi se quiere obtener el pbi trimestral para los
distintos años.

use pbi, clear


collapse (sum) pib , by(trimestre ano)
sort ano trimestre
list in 1/10

120
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Ejercicio

Suponga que tiene la siguiente información sobre los hogares, pero se necesita obtener para
cada individuo el ingreso familiar y la edad del jefe de familia (codperso igual a 1).

base7.dta
codperso codhogar edad ingreso
1 172 35 1500
2 172 29 1200
1 185 48 450
2 185 45 800
3 185 24 500
4 185 19 0
1 190 25 2200
2 190 24 1500
3 190 2

El resultado es:

codperso codhogar edad ingreso ingresofam edadjefe


1 1 172 35 1500 2700 35
2 2 172 29 1200 2700 35
3 1 185 48 450 1750 48
4 2 185 45 800 1750 48
5 3 185 24 500 1750 48
6 4 185 19 0 1750 48
7 1 190 25 2200 3700 25
8 2 190 24 1500 3700 25
9 3 190 2 . 3700 25

121
Stata 10.0 para economistas
Humberto Ortiz Ruiz

4.2. Análisis de bases de datos con diseño muestral complejo

El objetivo de este apartado es hacer una introducción de algunos comandos de STATA útiles
para analizar datos de encuestas que utilizan distintas formas de muestreo (o diseños
muestrales).

A la hora de realizar encuestas muy rara vez se utiliza la técnica de muestreo aleatorio simple
en la medida que muchas veces es imposible de realizarla y no es tan eficiente, en térmninos
financieros y estadísticos, que otros métodos de muestreo.

En el caso de muestreos distintos al aleatorio simple se requiere de un software que tome en


cuenta la estructura del método de muestreo en la media que el cálculo de los errores estándar
de los estimadores es afectado por el diseño muestral. Si no se especifica de forma correcta el
diseño muestral luego se obtendrán estimadores inadecuados y errores estándar incorrectos
subestimados.

Las características comunes entre los distintos diseños muestrales son: pesos o
pondereaciones, las unidades primarias de muestreo (PSU), estratos (STRATA) y corrección de
población finita (FPC). El diseño muestral tiene como elementos los pesos, PSUs, strata y
pesos replicados (si aplica).

122
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Aplicación ENAHO

Inicio: 1995. Ha sido llevada a cabo trimestralmente hasta el cuarto trimestre del año 2002. En
mayo del 2003 empezó a realizarse en forma continua.

Objetivos:

• Generar indicadores relacionados al empleo y al ingreso con el objetivo de conocer las


condiciones de vida de los hogares (bienestar y pobreza) y su evolución.
• Medir el alcance de los programas sociales provistos por el Estado.

Cobertura: La encuesta se realiza tomando en cuenta el ámbito nacional, en el área urbana y


rural, en los 24 departamentos y la Provincia Constitucional del Callao.

Diseño muestral:

• Tipo de muestreo:
Probabilística, de áreas, estratificado, multietápico e independiente en cada departamento
de estudio.

• Tamaño de la muestra (a partir de ENAHO 2003): Total: la encuesta se realiza a 20084


viviendas particulares. Por otro lado, existe una parte de la muestra que es encuestada
siempre. Este panel consta de 6146 viviendas particulares.

Método de recolección de datos: Se encuesta directamente a todas las personas de catorce


años o más.

123
Stata 10.0 para economistas
Humberto Ortiz Ruiz

En cada trimestre la ENAHO suele abarcar un tema particular, los cuales son presentados a
continuación:

Inferencia, Solo se puede hacer inferencia a partir de los datos a nivel departamental. A nivel
provincial solo se pude hacer inferencia en Lima Metropolitana y en la Provincia Constitucional
del Callao.

Nota: En la siguiente dirección se pueden hacer todo tipo de preguntas acerca de la ENAHO y
serán respondida por el INEI: http://www.inei.gob.pe/ineibpr/enahobpr.htm.

124
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Aplicación: ENAHO 2000-II.

Una de las ventajas que ofrece el Stata para el análisis de Encuestas como la ENAHO, con
Diseño muestral complejo, es que permite calcular los estimadores teniendo en cuenta el diseño
muestral de la misma (diferente al muestreo aleatorio simple). Además, Stata proporciona
estadísticos con los cuales se puede evaluar la confiabilidad del resultado en forma
simultánea a su estimación. De esta manera el usuario está en la capacidad de interpretar y
utilizar adecuadamente cada estimación proveniente de la encuesta.

Los principales elementos que se deben tener en cuenta en el trabajo con datos de encuestas
por muestreo son:

Ponderación: En las encuestas por muestreo, las observaciones son seleccionadas


mediante un proceso aleatorio, donde cada observación puede tener una probabilidad
de selección diferente. La ponderación (o peso) de una observación (hogar, por ejemplo)
es igual a la inversa de la probabilidad de pertenecer a la muestra. Es usual que luego
del trabajo de campo se realicen ajustes sobre esta ponderación, debido, por ejemplo,
al efecto de la “No-Respuesta”. Un peso wj de una observación j significa que la
observación j representa a wj elementos de la población. Si no se toman en cuenta las
ponderaciones, las estimaciones que se obtengan estarán sesgadas.

Conglomerados o cluster: Algunas veces se utiliza el muestreo por conglomerados, es


decir las observaciones son muestreadas en grupos o “clusters”, por ejemplo, provincias
dentro de departamentos, distritos dentro de provincias y finalmente viviendas dentro de
los distritos seleccionados, que son el objetivo final del muestreo. Todas las
observaciones de un mismo cluster no son independientes entre si, si no se toma en
cuenta este hecho, los errores estándar que se obtengan serán menores a los
verdaderos.

Estratos: En algunos casos, también se emplea el muestreo estratificado, donde


diferentes grupos de observaciones o estratos, son muestreados en forma
independiente. Al igual que el caso anterior, si no se toma en cuenta este hecho, se
obtendrán sub estimaciones de los errores estándar verdaderos.

125
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Stata permite incorporar el DISEÑO MUESTRAL (ponderaciones, conglomerados y estratos)


antes de ejecutar las estimaciones. Es decir, Stata utiliza las fórmulas de estimación de
estadísticos propias de cada tipo de muestreo. Todos los comandos para el análisis de datos
provenientes de encuestas comienzan con las letras svy

Especificación del Diseño Muestral: SVYSET

 En el caso de la Enaho es necesario especificar las variables que contienen las


ponderaciones, los conglomerados y los estratos, antes de obtener cualquier
estimación.

svyset [pweight=factor], strata(estrato) psu(conglome)

svydes

. svydes

pweight: factor
Strata: estrato
PSU: conglome
#Obs per PSU
Strata ----------------------------
estrato #PSUs #Obs min mean max
-------- -------- -------- -------- -------- --------
1 147 3045 2 20.7 42
2 39 779 6 20.0 32
3 25 478 7 19.1 27
4 40 738 4 18.4 32
5 88 1630 4 18.5 31
-------- -------- -------- -------- -------- --------
5 339 6670 2 19.7 42

126
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Estimación de Promedios: SVYMEAN

 Se utiliza para calcular promedio de variables cuantitativas


 Por defecto presenta el promedio estimado, el error estándar, el intervalo de 95% de
confianza y el efecto de diseño de esta estimación
 Se pueden utilizar las opciones if y by.

. svy: mean p209


(running mean on estimation sample)

Survey: Mean estimation

Number of strata = 5 Number of obs = 7283


Number of PSUs = 339 Population size = 1.9e+07
Design df = 334

--------------------------------------------------------------
| Linearized
| Mean Std. Err. [95% Conf. Interval]
-------------+------------------------------------------------
p209 | 3.713544 .0329931 3.648644 3.778445
--------------------------------------------------------------

.
. svy: mean p510 if(p207==1)
(running mean on estimation sample)

Survey: Mean estimation

Number of strata = 5 Number of obs = 1009


Number of PSUs = 294 Population size = 2.8e+06
Design df = 289

--------------------------------------------------------------
| Linearized
| Mean Std. Err. [95% Conf. Interval]
-------------+------------------------------------------------
p510 | 3.573739 .0536138 3.468216 3.679262
--------------------------------------------------------------

.
. svymean p510, by (p209)

Survey mean estimation

pweight: factor Number of obs = 1532


Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 313
Population size = 4255250.8

------------------------------------------------------------------------------
Mean Subpop. | Estimate Std. Err. [95% Conf. Interval] Deff
---------------+--------------------------------------------------------------
p510 |
convivie | 3.559847 .0903714 3.382023 3.73767 1.422119

127
Stata 10.0 para economistas
Humberto Ortiz Ruiz

casado_( | 3.114694 .0907382 2.936149 3.29324 2.210921


viudo_(a | 3.642542 .1959168 3.257037 4.028047 .7739832
divorcia | 1.659782 .2359803 1.195444 2.124119 .7584101
separado | 3.379248 .1862155 3.012833 3.745664 1.696307
soltero | 3.648546 .0636715 3.52326 3.773832 2.071847
------------------------------------------------------------------------------

.
. svymean p510, by (estrato) ci obs

Survey mean estimation

pweight: factor Number of obs = 1532


Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 313
Population size = 4255250.8

------------------------------------------------------------------------------
Mean Subpop. | Estimate Std. Err. [95% Conf. Interval] Obs
---------------+--------------------------------------------------------------
p510 |
ciudades | 3.514729 .0664502 3.383976 3.645483 838
grandes_ | 3.036716 .1306384 2.77966 3.293773 209
ccpp_de_ | 3.257252 .258756 2.748098 3.766405 130
ccpp_de_ | 3.336897 .2070024 2.929579 3.744215 130
area_rur | 3.552544 .1029107 3.350047 3.755041 225
------------------------------------------------------------------------------

128
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Estimación de Proporciones: SVYPROP

 Presenta el número de observaciones, la proporción estimada y el error estándar de esta


estimación de los casos de la muestra respecto a las categorías de una variable dada
 Se pueden utilizar las opciones if y by.

. svyprop p207

------------------------------------------------------------------------------
pweight: factor Number of obs = 10085
Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 26697712
------------------------------------------------------------------------------

Survey proportions estimation

+----------------------------------------+
| p207 Obs Est. Prop. Std. Err. |
|----------------------------------------|
| hombre 5064 0.504905 0.005293 |
| mujer 5021 0.495095 0.005293 |
+----------------------------------------+

.
. svyprop p209 if (p207==1)

------------------------------------------------------------------------------
pweight: factor Number of obs = 3578
Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 9628006
------------------------------------------------------------------------------

Survey proportions estimation

+------------------------------------------+
| p209 Obs Est. Prop. Std. Err. |
|------------------------------------------|
| convivie 653 0.168261 0.009034 |
| casado ( 1133 0.317648 0.010693 |
| viudo (a 85 0.021831 0.002934 |
| divorcia 5 0.000593 0.000299 |
| separado 78 0.020051 0.002876 |
|------------------------------------------|
| soltero 1624 0.471616 0.010434 |
+------------------------------------------+

129
Stata 10.0 para economistas
Humberto Ortiz Ruiz

. svyprop p209, by (p207)

------------------------------------------------------------------------------
pweight: factor Number of obs = 7283
Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 19469826
------------------------------------------------------------------------------

Survey proportions estimation

-> p207=hombre

+------------------------------------------+
| p209 Obs Est. Prop. Std. Err. |
|------------------------------------------|
| convivie 653 0.168261 0.009034 |
| casado ( 1133 0.317648 0.010693 |
| viudo (a 85 0.021831 0.002934 |
| divorcia 5 0.000593 0.000299 |
| separado 78 0.020051 0.002876 |
|------------------------------------------|
| soltero 1624 0.471616 0.010434 |
+------------------------------------------+

-> p207=mujer

+------------------------------------------+
| p209 Obs Est. Prop. Std. Err. |
|------------------------------------------|
| convivie 662 0.167090 0.009397 |
| casado ( 1123 0.309550 0.009331 |
| viudo (a 259 0.074677 0.005631 |
| divorcia 15 0.002292 0.000926 |
| separado 274 0.070115 0.005477 |
|------------------------------------------|
| soltero 1372 0.376277 0.008808 |
+------------------------------------------+

130
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Cruce de dos variables : SVYTAB

 Produce una tabla de dos entradas con la proporción de la muestra que pertenece a
cada celda (cruce da variables), respecto al total de la muestra.
 Para modificar el contenido de la tabla se deben especificar los estadísticos después de
una coma
 En caso de que se desee estimar las proporciones respecto a filas o columnas, basta
con indicar row o column después de la coma.
 Se puede utilizar la opción if

. svytab estrato p209

pweight: factor Number of obs = 7283


Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 19469826

--------------------------------------------------------------------------------
estrato |
geogr fic | estado civil
o | convivie casado ( viudo (a divorcia separado soltero Total
----------+---------------------------------------------------------------------
ciudades | .076 .1586 .0224 .0013 .0261 .2272 .5116
grandes | .0149 .0324 .005 1.4e-04 .0059 .053 .1113
ccpp de | .0063 .0148 .0022 6.4e-06 .0026 .0182 .0441
ccpp de | .0248 .0356 .0069 0 .0042 .042 .1134
area rur | .0456 .0721 .0121 0 .0066 .0831 .2196
|
Total | .1677 .3136 .0485 .0015 .0454 .4234 1
--------------------------------------------------------------------------------
Key: cell proportions

Pearson:
Uncorrected chi2(20) = 95.6171
Design-based F(8.90, 2972.66)= 2.2077 P = 0.0195

131
Stata 10.0 para economistas
Humberto Ortiz Ruiz

. svytab,se ci deff

pweight: factor Number of obs = 7283


Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 19469826

--------------------------------------------------------------------------------------
estrato |
geogr fic | estado civil
o | convivie casado ( viudo (a divorcia
----------+---------------------------------------------------------------------------
ciudades | .076 .1586 .0224 .0013
| (.007) (.0093) (.0023) (5.1e-04)
| [.0634,.0909] [.1412,.1778] [.0183,.0275] [6.0e-04,.0028]
| 5.039 4.714 1.792 1.469
|
grandes | .0149 .0324 .005 1.4e-04
| (.0032) (.0057) (9.5e-04) (8.1e-05)
| [.0098,.0226] [.0229,.0456] [.0035,.0073] [4.4e-05,4.4e-04]
| 4.951 7.442 1.316 .3445
|
ccpp de | .0063 .0148 .0022 6.4e-06
| (.0013) (.0037) (6.4e-04) (6.4e-06)
| [.0042,.0095] [.009,.0242] [.0012,.0039] [8.9e-07,4.6e-05]
| 2.021 6.924 1.394 .0467
|
ccpp de | .0248 .0356 .0069 0
| (.0033) (.0048) (.0017) (0)
| [.0191,.0322] [.0273,.0464] [.0042,.0111]
| 3.257 4.941 3.011
|
area rur | .0456 .0721 .0121 0
| (.0049) (.0062) (.0023) (0)
| [.0369,.0562] [.0609,.0852] [.0084,.0175]
| 3.948 4.134 3.106
|
Total | .1677 .3136 .0485 .0015
| (.009) (.0092) (.0033) (5.2e-04)
| [.1507,.1861] [.2958,.3319] [.0424,.0555] [7.2e-04,.0029]
| 4.221 2.856 1.717 1.362
--------------------------------------------------------------------------------------

132
Stata 10.0 para economistas
Humberto Ortiz Ruiz

-------------------------------------------------------------------
estrato |
geogr fic | estado civil
o | separado soltero Total
----------+--------------------------------------------------------
ciudades | .0261 .2272 .5116
| (.0026) (.0111) (.0198)
| [.0214,.0317] [.2061,.2497] [.4726,.5504]
| 1.94 5.109 11.44
|
grandes | .0059 .053 .1113
| (.0013) (.01) (.018)
| [.0038,.0092] [.0364,.0765] [.0805,.1521]
| 2.185 14.61 23.97
|
ccpp de | .0026 .0182 .0441
| (5.6e-04) (.0042) (.0095)
| [.0017,.004] [.0115,.0287] [.0288,.0671]
| .8885 7.358 15.62
|
ccpp de | .0042 .042 .1134
| (.0012) (.006) (.0121)
| [.0024,.0073] [.0317,.0554] [.0918,.1394]
| 2.531 6.447 10.54
|
area rur | .0066 .0831 .2196
| (.0012) (.0065) (.0147)
| [.0046,.0094] [.0712,.0969] [.1921,.2498]
| 1.6 4.075 9.149
|
Total | .0454 .4234 1
| (.0032) (.0073)
| [.0394,.0522] [.4092,.4377]
| 1.762 1.569
-------------------------------------------------------------------
Key: cell proportions
(standard errors of cell proportions)
[95% confidence intervals for cell proportions]
deff for variances of cell proportions

Pearson:
Uncorrected chi2(20) = 95.6171
Design-based F(8.90, 2972.66)= 2.2077 P = 0.0195

Mean generalized deff = 1.7276


CV of generalized deffs = 0.9001

133
Stata 10.0 para economistas
Humberto Ortiz Ruiz

. svytab, row

pweight: factor Number of obs = 7283


Strata: estrato Number of strata = 5
PSU: conglome Number of PSUs = 339
Population size = 19469826

--------------------------------------------------------------------------------
estrato |
geogr fic | estado civil
o | convivie casado ( viudo (a divorcia separado soltero Total
----------+---------------------------------------------------------------------
ciudades | .1486 .31 .0438 .0026 .051 .444 1
grandes | .1337 .2909 .0452 .0013 .0531 .4758 1
ccpp de | .1436 .3355 .0489 1.4e-04 .0593 .4126 1
ccpp de | .2188 .3141 .0604 0 .0368 .3699 1
area rur | .2077 .3285 .0551 0 .03 .3787 1
|
Total | .1677 .3136 .0485 .0015 .0454 .4234 1
--------------------------------------------------------------------------------
Key: row proportions

Pearson:
Uncorrected chi2(20) = 95.6171
Design-based F(8.90, 2972.66)= 2.2077 P = 0.0195

134
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5. Modelos para variables categóricas y limitadas

5.1. Introducción

Los métodos de estimación expuestos hasta el momento (MCO, VI, GMM) tienen como
requisito que la variable dependiente sea observada en una escala continua o irrestricta (por
ejemplo PBI, ingreso, consumo, etc.) Sin embargo, es muy común que dicha condición no se
cumpla. Hay casos en los cuales la variable dependiente es una variable discreta o es una
variable dependiente limitada.

Asimismo, la mayoría de variables económicas se encuentran limitadas de algún grado. Por


ejemplo frecuentemente son positivas. Sin embargo no necesitan de un tratamiento especial.
Cuando la variable dependiente es discreta y toma pocos valores carece de sentido tratarla
como una variable continua.

A grandes rasgos se pueden distinguir tres tipos de variables:

a. Cualitativas
b. Trucadas o censuradas (variables condicionadas)
c. Que toman valores enteros

Algunos ejemplos de variables categóricas y limitadas:

o Binarias. Son variables que tienen dos categorías. Usualmente indican la ocurrencia de
un evento o la presencia de una característica. Ejm. ¿es más probable que un
consumidor compre una marca a otra?, ¿se respondió a alguna pregunta específica de
una encuesta?

o Ordinales. Son variables en donde sus categorías pueden ser ordenadas o rankeadas.
Ejm. preguntas que buscan medir el grado de aprobación de algo, la frecuencia de la
ocurrencia de algún evento, de orientación política, entre otros.

o Nominales. Son variables que tienen múltiples categorías o resultados y que no se


pueden ordenar. Ejm. ocupaciones, estado civil, preferencias por marcas, entre otros.

o Censuradas. Son variables limitadas. Este tipo de variables se generan cuando sus
valores no son conocidos para un cierto rango de la variable. Ejm. gasto en bienes
durables, medición de salarios por hora, entre otros.

La censura se puede dar por razones metodológicas. Ejm. en el censo de 1990 todos los
salarios por encima de 140,000 fueron registrados en 140,000 por motivos de
confidencialidad.

o De conteo. Indican el número de veces que ocurre un evento. Toman valores enteros
no negativos. Se utilizan las regresiones de Poisson para modelar este tipo de variables.
Ejm. número de veces que una persona a visitado al doctor el último año, número de
artículos que un científico a publicado, entre otros.

135
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.1.1. Modelo de probabilidad lineal

Supongamos que un investigador está interesado en analizar la PEA, diferenciando entre PEA
ocupada y no ocupada, es decir:

1 si PEA ocupada
yi = 
0 si PEA no ocupada

Una alternativa es regresionar el siguiente modelo vía MCO, que se conoce como modelo de
probabilidad lineal:

yi = x i β + ui

Sin embargo la estimación presenta los siguientes problemas:

i. El valor predicho (pronosticado, yˆ i ) no está en el rango (0,1)

ii. La perturbación aleatoria puede no seguir una distribución normal.

iii. Hay problemas de heterocedasticidad.

iv. Forma funcional incorrecta

136
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.2. Modelos binarios: logit y probit

5.2.1. Modelo de la variable latente

Para resolver estos problemas se asume usualmente una variable latente, no observable, Yi*,
que determina el valor de la variable dicótomica que observamos.

El modelo estructural es

y* = xβ + e

1 si yi* = xi β + vi > 0
yi = 
0 en otro caso

El término de perturbación se puede distribuir de distintas formas. Si e se distribuye como una


normal (estándar)

Función de densidad (pdf) Función acumulada (cdf)


2 e
1 e 1 t2
φ (e) =

exp(− )
2
Φ ( e) = ∫
−∞ 2π
exp(− )dt
2

Otra posibilidad es que e se distribuya como una logística estándar

Función de densidad (pdf) Función acumulada (cdf)


exp(e) exp(e)
λ (e) = 2
Λ (e) =
[1 + exp(e)] 1 + exp(e)

La variable que observamos sólo se dará si para cada observación de la muestra se cumple
que ei > − xi β . La probabilidad que tal situación ocurra es:

P( yi = 1) = P (ei > − xi β )

Si se define la función de densidad acumulada de los errores ( vi ) como F(.), luego

P( yi = 1) = 1 − G (− xi β ) = G ( xi β )

137
Stata 10.0 para economistas
Humberto Ortiz Ruiz

De forma similar:

P( yi = 0) = G (− xi β ) = 1 − G ( xi β )

La forma de G(.) dependerá del supuesto que se formule para vi (que puede ser normal,
logística, etc.).

5.2.2. Estimación

Se pueden estimar los parámetros del modelo utilizando el método máxima verosimilitud. Sea la
función de densidad condicional

y 1− y
f ( y / x; β) = [G (xi β) ] [1 − G (xi β)]

La función máximo verosimil para toda la muestra, dado que las observaciones son iid, está
dada por:

n
l ( β ) = ∑ yi log(1 − G (− xi β )) + (1 − yi ) log(G (− xi β ))
i =0

Donde las condiciones de primer orden son no lineales obteniéndose las estimaciones de los
parámetros vía iteración.

Amemiya (1985) indica las condiciones bajo las cuales dicha función es globalmente cóncava,
lo que asegura la unicidad de los estimadores MV. Dichos estimadores son consistentes,
asintóticamente normales y eficientes.

5.2.3. Esperanza condicional

Notemos que el valor esperado de yi viene dado simplemente por la probabilidad de que yi=1,
es decir:

E ( yi = 1 X i , β ) = 1* P( y ) + 0* P( yi = 1 xi , β ) = P( yi = 1 xi , β )

Así, se puede describir el modelo bivariado como un modelo de regresión tal que:

yi = E ( yi X i , β ) + ei
Yi = 1 − G (− X i β ) + ei
donde

138
Stata 10.0 para economistas
Humberto Ortiz Ruiz

E (ei xi , β ) = 0
Var (ei X i , β ) = G (− xi β )(1 − G (− xi β ))

5.2.4. Modelos Logit y Probit

El modelo Probit asume que la distribución del error es una normal estándar de forma tal que:

P( yi = 1 xi , β ) = 1 − Φ (− xi β ) = Φ ( xi β )

Donde Φ ( X i β ) es la distribución acumulativa de una distribución normal estándar

Mientras que el modelo Logit asume que el error sigue una distribución logística, es decir:

 e− xi β  e xi β
P( yi = 1 xi , β ) = 1 −  − xi β  = xi β
 1− e  1− e

5.2.5. Interpretación

5.2.5.1. Predicciones de probabilidades

a. Rango de probabilidades

La probabilidad predicha se define como:

 ( y = 1 / x ) = G( x β )
P i i i

El rango para cada explicativa se determina tomando los valores extremos de dicha
probabilidad.

b. Ploteo de las probabilidades

En algunas ocasiones es útil analizar el efecto de dos variables en la probabilidad manteniendo


el resto constante. Por ejemplo, mediante el ploteo de probabilidades se puede analizar si la
relación de una variable explicativa con la probbilidad es aproximadamente lineal o no.

5.2.5.2. Efectos marginales o parciales

En el caso de los modelos Logit y Probit la interpretación de los coefientes estimados (los betas)
es complicada, desde que estos no pueden ser interpretados como los efectos marginales de
las explicativas sobre la variable dependiente. En el caso de modelos bivariados el efecto
marginal de xj sobre la probabilidad condicionada está dado por:

139
Stata 10.0 para economistas
Humberto Ortiz Ruiz

∂E ( yi xi , β )
= g (−xi β ) β j
∂x j

Donde g ( x ) es la función de densidad correspondiente a G ( x) . Notemos dicha expresión


depende de los valores de todos los valores de x. La dirección del efecto dependerá sólo del
signo de β j .

5.2.5.3. Efectos discretos

El efectos discreto de una variable sobre la probabilidad se define como

∆P( yi = 1/ x i )
= P( yi = 1/ xi , xi + δ ) − P ( yi = 1/ xi , xi )
∆xi

Así se pueden definir distintos tipos de efecos discretos dependiendo del valor que tome δ o la
variable explicativa xi .

5.2.5.4. Ratios odds

Se define a

P( y = 1/ x)
Ω(x) =
1 − P( y = 1/ x)

Como el ratio odds del evento dado x. Para el caso del modelo logit se puede demostra que
ln Ω(x) = xβ . Se suelen utilizar las siguientes medidas:

∂ ln Ω( x)
= βk
∂xk

Ω(x, xk + δ )
= exp( β k δ )
Ω(x, xk )
5.2.6. Pruebas de hipótesis

Los estimadores MV tienen una distribución asintótica normal. Las hipótesis individuales se
pueden probar con test z que se distribuyen como normal en el caso de muestras grandes.

Las hipótesis múltiples se pueden probar con distintos test siendo los más utilizados Wald, ratio
verosimilitud y multiplicadores de Lagrange.
140
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.2.7. Medidas de ajuste

5.2.7.1. Para cada observación

a. Residuos

Los residuos estandarizados del modelo binario son:

yi − πˆi
ri =
πˆi (1 − πˆi )

Otra medida es la estadística de Pearson estandarizada que es igual a:

ri
ri S =
1 − hii

b. Influencia

Indica el efecto de una observación sobre las estimaciones.

∆ i βˆk
DFBETAik =
ˆ βˆk )
var(

5.2.7.2. Globales

a. Pseudo R2 de

Hay distintas medidas de Pseudo R2 las cuales se basan en las distintas definiciones de R2 de
un modelo lineal, entre ellas el R2 de McFadden.

El R2 de McFadden es equivalente al R2 utilizado en el modelo de regresión lineal simple. R2 de


McFadden (o pseudo R2) se le denomina Indice de Razón Verosimilitud (Likelihood Ratio
Index). A medida que dicho estadístico tiende a 1 se dirá que el modelo estimado explica una
parte importante de la varianza del modelo.

b. Ratios de predicción (o tablas de clasificación de predicción)

141
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Una forma estándar de formar los ratios de predicción es tomando cada probabilidad
pronosticada, p̂ , para cada observación y compararlas con un punto de corte, usualmente 0.5,
así si p̂ >0.5 la observación se pronostica que será 1 (es decir se pronostica que Y=1) y
viceversa. La fracción de observaciones donde el pronóstico es igual al valor observado se
denomina ratio “correcto” de predicción.

5.2.8. Aplicación

El ejemplo se basará del estudio realizado por Mroz (1987) sobre la participación de la fuerza
laboral de las mujeres. Se tiene una muestra de 753 mujeres blancas casadas con edades que
fluctúan entre 30 y 60 años. La variable dependiente es lfp que es una variable binaria que toma
1 si la mujer está empleada ny 0 en otro caso.

Se estima el modelo asumiendo que el error se distribuye como una normal o como una
distribución logística

142
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Los resultados se resumen en la siguiente tabla:

143
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Se realizan los siguientes test de hipótesis individual en el modelo logit

Y test de hipótesis múltiple

Ho: hc=wc=0

Ho: hc=wc

Ho: coeficientes (excepto intercepto) son iguales a 0

144
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Una vez realizada la estimación se analiza el ajuste del modelo.

Residuos de Pearson
4
Residuo Estandarizado de Pearson
-2 0
-4 2

0 200 400 600 800


Numero de observacion

145
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Estadístico de Cook
.3

752

142
Estadistico de Cook
.2

309

108
214 345 382
.1

407 721
73
686 743
43 396 750
217 257 317 400
384 507 555
548 638 716747
722
394408 480511 630653 739
48 276 401 622
2337
21
114 163 185
239
260 291
297 389
426 528550 637 674693 712733
11 42 213 250 263 305 348 430 475 534551 711
701 731
725
723
738
744
10 136 156182 249 312
306 419
424 453
456
457
462482506 522
519 547564
558 587
580
563 591 610
613628 707735
697
691 741
35618
19 45 80 125 159 202 283
272
258278
284304 326
318 347
335 369388 442
448
439
438
429 451470 504
509532 568
566585
597
583603 625640
643662
666
665684 709
8 46
38 65
60 78 101
95
97
88 129
134 158
147166
150
161 189204225
210 242
244 286
269
275 311
310327344
333 356 417
414
428 476 520
503
517
515
524
512 544
533
529
536 594611
608 632650
639 687
677
681696
682
689706
699 728
718 742
734
745
740
47 26
16 32
31
27
22 39
34
3549
47
44 61
66
57
56
5871
67
64
72 86
87
82
84
83 116
110
107
105
94
96
89
93 128
119138
124
121
111130 153
148
144
133
137
122 164
168
162
169
160176
178193
183199
190
181
186208
200
194 229
222
216
206
201
205 245
228
227 248
241
238
226 265
267
254
252
247
251
243262279
274
280
268 295
296
281
282
271 300
294 328
313
319
314 337
340
323
322
308
302 355
341
338 367
360
352370
361
374
368
353
354 395418
409
397
399
405 436
425
422
420
410 454
458
444
446
450
441
427
433 469
461
467
468
455
472
466 498
501
487
497
496
488
489
493510527
521542
541
539562
571592
581
575
572
579
577
586
570
557
573588
598
590
576 599618
605
607
620
609623
615
612 644
631
645
636
627
624642
641
629 661
659
649
660
646
655
651
656
648
634654670
663 690
676
667
669
679
683702
714730
729
720
726
717
719
708
710
694 749
737
753
14
13
1212
9 25
2029
24
15
17 33
36
28
3040
4151
52
54
50
5363
55
597081
75
77
74
76
69
62
68 90
91
85
79 104
92112
100
98
102117
106126
115
113
109
103
99 140
132
131
118
120
123143
127 151
145
135
146 173
167
152
154
139 171
157
172191
175
177
170
179
165
155
149
141 209
203
198
192
196
197
180
187
184
195
188
174 218
223
221
212
224
215 240
234
237
235
231
230
219
233
220
207
211 236
232 256
246 273
261
266
253
259
255270288
277
264285
292
289
287
290307
299
303
301
293
298 325
316
315330
332
321 346
336
331
320 349
339
324
334 366
357
342
329
343 372
373
376
363
351
358
362
359
350 390
387
377
383
378
381
386
375
385
371
364
365 402
403
391
398
406
404
393
392
379
380 421
411
415
416
413
412 437
431
423
432452
443
440
447
434
445
435 463
460477
464
449
459 484
490
481
478491
479
483
471
473
465 500
485
486
474 508
499
492
502 523
526
516
513
518
514
505
494
495 525543
535
540
538
530
537
531 560
553
554
552
556
549
545 574
559578
565
567
561
546 584602
589
593
595
582
569 601
596 619
621
604
606
600 626
616635
633
617
614 647664
652
657 680
668
673
675
658 692
678698
685
672
671 715
704
713
700
688
705
703
695 732
724 751
746
736
727 748
0

0 200 400 600 800


Numero de observacion

146
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Comparando modelos

Interpretación del modelo utilizando los valores predichos

147
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Comparando las predicciones de logit y probit


1
.75
Logit: Pr(lfp)
.5
.25
0

0 .25 .5 .75 1
Probit: Pr(lfp)

Predicciones individuales.

Tipo 1

148
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Tipo 2

Tipo 3

149
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Ploteo de probabilidades
1 .75
Pr(Fuerz Laboral)
.25 .5
0

0 20 40 60 80 100
Ingreso

Age 30 Age 40
Age 50 Age 60

Cambio en la probabilidad

150
Stata 10.0 para economistas
Humberto Ortiz Ruiz

151
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.3. Modelos ordenados

Una variable es ordinal cuando sus categorías pueden ser ordenadas de mayor a menor.
Ejm. Rating de bonos, encuestas de opinión (de acuerdo o descuerdo), empleo, entre otros.

5.3.1. Modelo latente

Sea el modelo estructural. y * = xβ + e , donde −∞ < y * < +∞ es una variable no observable y*


continua. y es una variable observable (que toma J valores o categorías) que se relaciona con
y * a través de la siguiente ecuación:

y = m si τ m−1 ≤ y*<τ m con m = 1,..., J

Donde τ 0 = −∞ y τ J = +∞
El error del modelo estructural se puede distribuir como una normal (probit) o como una logística
(logit).

La probabilidad de que se observe la categoría m corresponde al área del error de distribución

entre los puntos de corte


τ m −1 y τ m .

P( y = m / x) = P(τ m −1 ≤ y*<τ m / x)

5.3.2. Estimación

Se suele suponer que β0 = 0 (o τ 1 = 0 ). El modelo a estimar es el basado en la


probabilidades

P( y = m / τ, β, x) = G (τ m − β 0 − β1 x) - G (τ m−1 − β 0 − β1 x) con β 0 = 0

La función de densidad será:

J
 i ( τ, β) = ∑1[ y = m ] log P ( y = m / ...)
m =1

Lo usual es estimar

152
Stata 10.0 para economistas
Humberto Ortiz Ruiz

∑  ( τ , β)
i=1
i

La función verosimiltud es bien comportada. Se puede maximizar con métodos numéricos.

5.3.3. Interpretación

a. Probabilidad predicha

Pˆ ( y = m / x) = G (τˆm − xβˆ ) - G (τˆm −1 − xβˆ )

De forma similar al caso de los modelos binarios se pueden realizar una serie de analisis entre
los cuales están: media de probabilidades y rango de probabilidades, ploteo de probabilidades y
tablas de predicción.

b. Cambio marginal o parcial

Se define como

∂P ( y = m / x)
= β k [ g (τ m − xβ) − g (τ m −1 − xβ) ]
∂xk
c. Cambio discreto

Se define como

∆P ( y = m / x )
= P ( y = m / x , xk = x E ) − P ( y = m / x , xk = x s )
∆xk

d. Ratios odds

El modelo logit ordenado se puede interpretar en términos de los ratios odds. La probabilidad
acumulada de un evento “m” está dado por:

m
P ( y ≤ m / x ) = ∑ P ( y = j / x)
j =1

El ratio odds es:

P ( y ≤ m / x) P( y ≤ m / x)
Ω≤ m / > m (x) = = = exp(τ m − xβ)
P ( y > m / x) 1 − P ( y ≤ m / x)

153
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.3.4. Pruebas de hipótesis

a. Test score

La hipótesis es β1 = ... = β J −1 . El modelo restricto sería P ( y ≤ m / x) = G (τ m − xβ)

Bajo la hipótesis nula se distribuye como una chi cuadrado de K(J-2) grados de libertad.

b. Wald

La hipótesis β1 = ... = β J −1 se puede plantear de la siguiente manera Dβ* = 0

 I −I ... 0 
 I ... ... 0 
 
Con D = 
... ... ... ...
 
I 0 ... ...

′ −1
( )
W = Dβˆ *  DVar
ˆ (βˆ *)D
 ( Dβˆ *)
Bajo la hipótesis nula se distribuye como una chi cuadrado de K(J-2) grados de libertad.

Para evaluar el supuesto de la regresión paralela con respecto a la variable xk, es decir la
ˆ (βˆ *) .
hipótesis β k 1 = ... = β kJ −1 se selecciona los valores correspondientes de D , βˆ * ´, Var

154
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.3.5. Aplicación

El ejemplo se basa en una datos de una encuesta realiza en los EE.UU. en los años 1977 y
1989. Los entrevistados respondieron a la pregunta ¿las madres que trabajan pueden
establecer lazos afectivos con sus hijos de igual manera que las madres que no trabajan?. Las
respuestas fueron codificadas de la siguiente manera: 1 = desacuerdo total, 2 = desacuerdo, 3
= de acuerdo y 4 = total acuerdo.

Se estima el modelo con logit y probit ordenado

155
Stata 10.0 para economistas
Humberto Ortiz Ruiz

156
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Resumiendo los resultados

Pruebas de hipótesis en el modelo logit

Hipótesis individuales

Hipótesis múltiples

157
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Medidas de ajuste

Test de Brant

158
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Efectos marginales y discretos

Ratios odds

Probabilidades predichas para un individuo “tipo”

159
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.4. Modelo logit multinomial

Una variable es nominal es aquella donde sus categorías no se pueden ordenar. Ejemplos,
modos de transporte, ocupaciones, estado civil, preferencias por marcas, entre otros.

5.4.1. El modelo logit multinomial (MNL)

Sea Y la variable dependiente con J categorías no ordenadas. La probabilidad que ocurra el


evento m viene dada por:

exp( xβm )
P ( y = m / x) = J

∑ exp(xβ
j =1
j )

Como en el caso de los modelos logit binomiales resulta adecuado presentar los ratios odds. El
odd de la categoría m con respecto a la n es igual

P ( y = m / x) exp(xβm )
Ω m / n ( x) = = = exp( x(βm − β n )) = exp( xβ m/n )
P( y = n / x) exp(xβ n )

Donde ln Ω m / n (x) es lineal en parámetros.

∂ ln Ω m / n (x)
= β km − β kn
∂xk

5.4.2. Estimación

La función verosimilitud para cada observación será:

J
dij
 i = ∏ Pi
j =1
N
L(.) = ∏  i
i =1
N J
ln L = ∑ ∑d ij ln( Pij )
i =1 j =1

Se suele estimar MNL tomando una categoría como referencia o base. Tenemos
ln Ω m / b (x) = x(β m − βb ) = xβ m/b

160
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Donde β m/b se denomina contraste

Se busca estimar el número mínimo de contrastes. Se puede calcular los estimadores de


modelos que utilicen otra comparación distinta al de la categoría base.

5.4.3. Pruebas de hipótesis

Una prueba de hipótesis usual para analizar la significancia del efecto de xk sobre la
probabilidad es H 0 : β k 1 = ... = β k J = 0 . Dicha hipótesis se puede evaluar con un test LR o
b b
Wald.

Test de significancia de dos categorías. En el caso que ninguna de las variables explicativas
afecte significativamente al odds de dos categorías (m y n) se dice que dichas categorías son
“indistinguibles” con respecto a las variables del modelo. La hipótesis de indistinguibilidad se
puede plantear como H 0 : β1 m = ... = β K m = 0 . Dicha hipótesis se puede evaluar con un test
n n
Wald.

5.4.4. Probabilidades predichas y cambio marginal (discreto)

La probabilidad de la probabilidad m se puede calcular en función de los “contrastes”

exp(xβm / b )
P ( y = m / x) = J

∑ exp(xβ
j =1
j /b )

El efecto marginal de xk sobre la probabilidad del evento m viene dado por:

∂P ( y = m / x)  J 
= P( y = m / x)  β km − ∑ β kj P( y = j / x) 
∂xk  j =1 
El efecto marginal de todas las explicativas viene dado por la siguiente expresión vectorial

∂P( y = m / x)  J 
= P ( y = m / x) β m − ∑ P( y = j / x)β j 
∂x  j =1 

El cambio discreto es igual a

∆P ( y = m / x )
= P ( y = m / x, xk = xE ) − P( y = m / x, xk = xs )
∆xk

161
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.4.5. Aplicación

162
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Calculando los coeficientes asociados a “White” para cada comparación de categorías

163
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Prueba de hipótesis para cada explicativa


LR

Wald

Prueba de hipótesis si las categorías son distinguibles (categorías combinables)

164
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Probabilidades predichas

Current (White=1) / Saved (White=0)

Cambio marginal y discreto

165
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.5. Modelos para datos censurados y truncados

La censura se da cuando hay observaciones limitadas para la variable dependiente y se cuenta


con observaciones de las variables independientes para toda la muestra. El truncamiento limita
los datos de manera más severa.

En el caso de la censura:

 y * si y* > t
y=
t y si y* ≤ t
 t −u 
P ( y* > t ) = 1 − Φ   = Φ (α )
 σ 
 t −u 
P ( y* ≤ t ) = P ( y = t y ) = Φ  
 σ 

5.5.1. Modelo Tobit

Sea el siguiente modelo estructural


y* = xβ + e

Donde e sigue una distribución N (0, σ 2 )

La ecuación de medida es

 y* si y*>t
y=
t y si y* ≤ t

En los modelos de solución de esquina ty = t = 0 .

La probabilidad de que una variable sea censurada es P ( y* ≤ t ) mientras que la

probabilidad de no censura viene dado por P ( y* > t ) .

166
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.5.1.1. Estimación

En el caso del modelo presentado la función de densidad de la variable censurada viene dado
por

1− di di
  t − xβ    1  y − xβ  
f ( y / x) =  Φ   σ 2 φ  σ 
  σ    

  t − xβ    1 1  y − xβ  
2

 i (β, σ ) = ln f (.) = (1 − di ) Φ 
2 2
  + di  − ln 2πσ −   
  σ   2 2  σ  

5.5.1.2. Interpretación

Hay tres momentos se interés según lo que se busque en el análisis: E ( y * / x)


E ( y / y* > t , x) y E ( y / x) .

En el caso de E ( y / y* > t , x) tenemos


 xβ − t 
φ
 σ 
E ( y / y* > t , x) = xβ + σ = u + σλ (δ )
 xβ − t 
Φ 
 σ 
xβ − t
Con δ=
σ

El cambio marginal de y / y* > t viene dado por

∂E ( y / y* > t , x)
= β k 1 − λ (δ ) − δλ (δ ) 
2

∂xk  

Mientras que el valor esperado, E ( y / x) , de la variable censurada viene dado por

E ( y / x) = P( y* ≤ t ) E ( y / y = t y , x) + P( y* > t ) E ( y / y* > t , x)
= Φ ( −δ )t y + Φ (δ )xβ + σλ (δ )

El cambio marginal de y viene dado por:

167
Stata 10.0 para economistas
Humberto Ortiz Ruiz

∂E ( y / x) β
= β k Φ (δ ) + (t − t y )φ (δ ) k
∂xk σ
McDonald y Moffit sugiere la siguiente descomposición:

∂E ( y / x) ∂E ( y / y* > t , x) ∂P ( y* > t )
= P( y* > t ) +  E ( y / y* > t , x) − t y 
∂xk ∂xk ∂xk
Aplicable cuando ty = 0

5.5.1.3. Aplicación

168
Stata 10.0 para economistas
Humberto Ortiz Ruiz

MCO

Tobit

169
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Efectos marginales

170
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.5.2. Sesgo de selección

Debido a la naturaleza de los datos muchas veces no se cuenta con una muestra aleatoria
de la población.

“Sample selection” o selección de muestra es un término genérico que describe una


muestra no aleatoria. Hay distintos mecanismos de selección: (i) diseño muestral y (ii)
comportamiento de las unidades.

5.5.2.1. Ecuación de selección probit (modelo de selección de muestra bivariado)

y1 = x1β1 + u1

y2 = 1 [ xδ 2 + v2 > 0]
Supuestos:

(i) x, y2 son siempre observados. y1 se observa cuando y2 = 1


(ii) u1 , v2 son independientes de x y tienen media 0.

(iii) v2 ∼ N (0,1)

(iv) E (u1 / v2 ) = γ 1v2


Se puede demostrar que

E ( y1 / x, y2 ) = x1β1 + γ 1h( x, y2 )

Heckman (1979) indica como obtener un estimador consistente de β1 .

5.5.2.2. Estimación

a. Dos etapas (Heckman o Heckit)

En la primera etapa se obtiene un estimador consistente de δ2 para calcular λ (xδˆ2 ) . Luego


en la segundo etapa se regresiona y1 con respecto a x1 , λ (xδˆ2 ) . Se obtienen estimadores
consistentes para β1 , γ 1 .

171
Stata 10.0 para economistas
Humberto Ortiz Ruiz

b. Máxima verosimilitud

Se asume que u1 , v2 se distribuyen como una normal divariada con media 0,


2
V ar(u1 ) = σ ,Var (v2 ) = 1, Cov (u1 , v2 ) = σ 12

Se puede demostrar que el logaritmo de la función verosimilitud (parcial) será:

 i (β1 , σ 12 , ρ , δ 2 ) = (1 − y2 ) log P ( y2 = 0 / x) + y2 log ( P( y2 = 1/ y1 , x) f ( y1 / x) )

P ( y2 = 0 / x) = 1 − Φ ( xδ 2 )
 xδ + ( y − x β )σ σ −2 
P ( y2 = 1/ y1 , x) = Φ  2 1 1 1 12 1

2 −2
 1 − σ 12 σ 1 
φ ( ( y1 − x1β1 ) / σ 1 )
f ( y1 / x) = φ ( y1 , x1β1 , σ 12 ) =
σ1
ρ = σ 12 / σ 1
Cuando y2 = 1 se observa y1 y se tiene información para estimar β1 .

2 1 1+ ρ 
Stata estima ln σ , atanhρ = ln   para que exista estabilidad durante la optimización.
2  1− ρ 

172
Stata 10.0 para economistas
Humberto Ortiz Ruiz

5.5.2.3. Aplicación

Sample selection

173
Stata 10.0 para economistas
Humberto Ortiz Ruiz

MCO

Dos etapas

Etapa 1.

174
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Etapa 2.

Por comando Heckman

175
Stata 10.0 para economistas
Humberto Ortiz Ruiz

MV

176
Stata 10.0 para economistas
Humberto Ortiz Ruiz

6. Modelos para datos de panel

En un panel tenemos observaciones de k variables explicativas durante T periodos para cada uno de los
N individuos de la muestra.

En corte transversal N individuos


K explicativas (aparte de la constante)

En series de tiempo T períodos


K explicativas (aparte de la constante)

En datos de panel N individuos


T períodos
K explicativas (aparte de la constante)

Nota 1: Varios cortes transversales no necesariamente forman un panel data, es necesario que los
mismos individuos estén en todos los cortes transversales.

Nota 2: Por lo general, N es muchísimo más grande que T pues, como las observaciones deben ser de
los mismos individuos, no suelen tenerse muchos períodos.
Por ejemplo: N=10 000 , T=5  N>T. Excepción: datos macro.

En principio, todas las técnicas econométricas de corte transversal y series de tiempo son aplicables a los
datos de panel, pero el hecho de que se disponga de pocos períodos limita la aplicación de las técnicas
de series de tiempo.

6.1. Modelos para datos en panel estático13

El modelo básico es:


yit =α + x|it β + µi + ε it

Donde i= 1,2,….,N y t = 1,…..T. El vector Xit tiene K elementos (variables explicativas sin
considerar el intercepto). Este modelo se puede estimar por MCO si los siguientes supuestos se
cumplen:

a) Ortogonalidad entre los errores y regresores: E[xit ,εit] = 0


b) Homocedasticidad: var(εit) = σε2, para todo i
c) No hay correlación entre los errores: Cov (εit, εis) = 0, para s ≠ t
d) La matriz X = [Xit] tiene rango completo = K (no hay multicolinealidad)

Sin embargo, con datos de panel se puede aprovechar la información disponible y construir
modelos de comportamiento más complejos. Se podría capturar efectos que no son detectados
en un modelo corte transveral o de serie de tiempo.

13
Tomando de las notas de clase del docente José Carlos Tello.

177
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Por otro lado, se pueden considerar efectos individuales (αi) específicos para cada unidad de
sección cruzada pero que son constantes a lo largo del tiempo. En el caso que los αi sean
iguales para todas las unidades o ecuaciones de cross-section entonces los estimadores de α y
β por MCO serán consistentes y eficientes (Pooled estimation).

Este efecto individual puede interpretarse como la habilidad del individuo que no es observada
pero que si afecta la variable dependiente. Este modelo de efectos individuales es estimado
según los supuestos establecidos sobre la correlación del error con los regresores. De esta
manera sigue dos tratamientos distintos: el enfoque de efectos fijos y el de efectos aleatorios.

Ventajas y desventajas del modelo de Datos de Panel14

Ventajas:
• Controlar la heterogeneidad individual.
• Provee más información, más variabilidad de los regresores, menos colinealidad, más
grados de libertad y eficiencia del estimador MCO.
• Es posible estudiar la dinámica del ajuste con mayor precisión.
• Identificar y medir los efectos que no son detectados en cross section y series de
tiempo.
• Elaboración de modelos de comportamiento más complejos.
• Elimina el sesgo de la agregación sobre las firmas o individuos.

Desventajas:
• Problemas en el diseño y en la recolección de los datos.
• Distorsiones originadas por errores de medición.
• Problemas de selección: auto selección, no respuesta; y
• Baja frecuencia temporal.

6.1.1. Modelo de Efectos Fijos

Un manera de captar las diferencias entre unidades (o individuos) es considerando una variable
dummy Di que indica la unidad i.

En este modelo se asume que los componentes no observados (habilidad por ejemplo) están
correlacionados con algunos regresores (educación) y por tanto no se cumple el supuesto de
ortogonalidad (a). Este tipo de problema también es llamado sesgo de heterogeneidad no
observada. Esta dificultad se presenta cuando entidades de naturaleza no observada diferentes
son agrupadas para la estimación. Por ejemplo, individuos muy hábiles y los poco hábiles.

14
Tomado de Baltagi, B
adi “Econometric Analysis of Panel Data”. Wiley Ed. 1995.

178
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Más hábiles

Menos hábiles

Este problema se plantea usualmente como un modelo de efecto fijos. La utilidad se da por dos
razones. Primero se ataca el problema de inconsistencia que es más serio que el de
ineficiencia. Segundo, la solución en modelos lineales es directa, pues un modelo con efectos
fijos es equivalente a incluir variables dummy para cada entidad. Además, si se tienen T
observaciones para cada entidad, se pueden sustraer los promedios de cada entidad y obtener:

yit − yi • = β ' ( xit − xi • ) + µ it − µi •

O el modelo de efectos fijos puede verse desde un enfoque matricial:

My = MXβ + Mµ ; donde M = I − D ( D ' D ) −1 D '

βˆ FE = ( X ' MX ) −1 X ' My

Donde y i • es el promedio de la i-ésima unidad o individuo. De esta forma, se eliminan los


componentes no observados que generaban inconsistencia. El estimador de efectos fijos,
también es llamado within estimator o estimador intra-grupos pues solo toma en cuenta las
variaciones al interior de la unidad o individuo y no las variaciones entre entidades diferentes.
Este procedimiento es equivalente al incluir una dummy para cada entidad en la regresión por lo
que también es conocido como el Estimador de Mínimos Cuadrados con Variables Dummy
(LSDV).

Estimador WITHIN se puede hallar incorporando dummies individuales invariantes en el tiempo.


Planteamos el modelo modificando la notación a que ahora β es de tamaño k y X it no incluye al
intercepto común C.

Yit = C + αi + X it β + ηit X it no incluye al intercepto

179
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Yit = φi + X itβ + ηit En forma vectorial φi incluye a C y a αi .

i es un vector de unos de tamaño T


Yi = iφi + X iβ + ηi

Ordenándolo matricialmente:

 Y1  i 0  0   φ1   X1   η1 
Y  0 i  φ  X   
 η2 
 2 =    2
+ 2  βkx1 + 
             
         
YN  NTx1 0 0  i  NTxN φN  Nx1  X N  NTxk η N 
  NTx1

 φ1 
φ 
Y = [d1 d 2  d N ] 2  + Xβ + η
  
 
φ N 
Y = Dφ + Xβ + η

φ
Y = [D X ]  + η Es un caso de regresión particionada.
β


β = ( X ´MX ) −1 ( X ´My )

Tanto P como M son simétricas e idempotentes.

Por ello el estimador de dummies es:


β dummies = ( X ´MX ) −1 ( X ´My ) con P = D(D´ D )−1 D´ y M = I − P

Pero las matrices P y M son las matrices asociadas al estimador Between y Within respectivamente.

PX = X Al premultiplicar por P una matriz, las observaciones son reemplazadas por los
promedios por individuos.

MX = X − X Al premultiplicar por M una matriz, las observaciones se transforman a sus desvíos


MX = X~ respecto de la media por los individuos.

Sabemos que el estimador Within resulta de aplicar MCO a las variables transformadas:

180
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Y~ = Y − Y
X~ = X − X


β w = ( X~´ X~ ) (X~´ ~y )
−1

= ((MX )´(MX )) ((MX )´(MY ))


−1

= ( X ´M ´MX ) ( X ´M ´My )
−1
como M es simétrica M = M´
= ( X ´MMX ) ( X ´MMy )
−1
como M es idempotente
= ( X ´MX ) ( X ´MY )
−1

∧ ∧
Por lo tanto β w = β dummies

Si procedemos igualmente con β b obtendríamos:

β b = ( X ´PX ) −1 ( X ´Py )

6.1.2. Modelo de Efectos Aleatorios

El enfoque de efectos fijos parece apropiado si creemos que dichos efectos corresponden
únicamente a las unidades analizadas y que no pueden establecerse para unidades adicionales
fuera de ella.

¿Cuál es la solución si las unidades de la sección cruzada son extracciones muestrales de una
población? La respuesta es tratar esos efectos individuales como un proceso estocástico que
forma parte del término µit. Además se asume que dichos componentes no están
correlacionados con los regresores (la principal diferencia con los efectos fijos).

ω it = µi + εit

Nota: no consideramos los efectos temporales dado que las observaciones de panel se
caracterizan por tener una pequeña amplitud en el tiempo.

E(µi )= E(εit) = 0
E(µi2) = σµ2
E(εit2) = σε2
E(ωit2) = σµ2 + σε2
E(ωitωis) = σµ2 , t ≠ s

La matriz de covarianzas de los errores para la i-ésima unidad es:

181
Stata 10.0 para economistas
Humberto Ortiz Ruiz

σ ε2 + σ µ2 σ µ2  σ µ2 
 
 σ µ2 σ ε2 + σ µ2  σ µ2  = σ 2 I + σ 2 ii '
Ω =  ε µ
 
 
 σ µ2  σ µ2 σ ε2 + σ µ2 

Finalmente la matriz de covarianzas de los errores será:

Ω 0  0 
0 Ω  0
Γ= 
 
 
 0 0  Ω

Bajo el supuesto de ortogonalidad, el estimador de MCG es el más eficiente pues incorpora la


información existente en la matriz de varianza de los errores. Este estimador se construye como
bMCG = (X’Γ-1X)-1X’Γ-1y . Empíricamente, esto implica construir la matriz estimada a partir de las
varianzas de los componentes del error. A manera de resumen, el uso de datos de panel
permite ganar en eficiencia al explotar la información contenida en los componentes no
observados (efecto individual).

La estimación por MCG implica el uso de ponderadores que transforman las variables
involucradas en la estimación. Dicho ponderador es el siguiente: Γ −1 / 2 = I ⊗ Ω −1 / 2 . Siendo
θ
Ω −1 / 2 = I − ii ' .
T

Nótese las similitudes de este procedimiento con los cálculos en el modelo de efectos fijos,
donde θ = 1. Se puede demostrar que el estimador de MCG, como el estimador de MCO, es
una media ponderada matricial de los estimadores intra y entre grupos.

6.1.3. Aplicación

La base de datos paneldata2.dta contiene información del nivel de gasto per cápita de los
distintos estados de EEUU (spend) y de variables sociodemográficas para el periodo 1950-
1989. Se quiere analizar el efecto de variables sociodemográficas como el ingreso personal per
cápita en niveles (persinc) y al cuadrado (persinc2), porcentaje de la población entre 5 a 17
años (aper5_17) y de 67 años a más (aper65), el porcentaje de demócratas (dem1), entre otras
sobre el gasto estatal.

Especificamos la base de panel

182
Stata 10.0 para economistas
Humberto Ortiz Ruiz

183
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Regresión Pooled (MCO)

Regresión de efectos aleatorios

184
Stata 10.0 para economistas
Humberto Ortiz Ruiz

A diferencia del modelo de efectos fijos, el término no observado pero que indica la diferencia
entre individuos no estaría correlacionado con los regresores. Existen pruebas estadísticas para
contrastar esta sospecha como el contraste de Hausman y el de Breusch – Pagan.

Contraste de efectos aleatorios (Breush – Pagan)

Contraste del multiplicador de Lagrange para el modelo de efectos aleatorios. El análisis se


basa en los residuos de MCO.
Ho : σν2 = 0
H1: σν2 ≠ 0
2
 n T 
2

 ∑ ∑ eit  
nT  i =1  t =1 
LM = −1 ~ X2 (1)
2(T − 1)  n T 2 
 ∑∑ eit 
 1=1 i =1 

Otras opciones disponibles para xtreg, re son:

i(variables), tiene como finalidad especificar que variable indica las observaciones por individuo,
en el caso que no se especifique con el comando xtset (o iis).

sa, indica que el método a utilizarse es el de Swamy –Arora (SWAR) para paneles
desbalanceados15.

theta, indica que en el cuadro de resultados se muestre el parámetro θ estimado.

level(#), sirve para especificar el nivel de confianza, por defecto es de 95%.

15
Ver Baltagui y Chang (1994). Incomplete Panels: A comparative study of altenative estimators for the unbalanced
one-way error component regression model. Journal of Econometrics 62: 67 – 89.

185
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Regresión del modelo con efectos fijos

Test F

( Ru2 − R p2 ) /( n − 1)
F= ~ F (n-1, nT – n – k)
(1 − Ru2 ) /( nT − n − k )

Predicción

La predicción de la variable dependiente se realiza con la siguiente sintaxis.

predict pre_xb, xb

Otros estadísticos son:

stdp error estándar de los valores estimados


ue los residuos combinados, µ i + ε it
xbu la predicción αˆ + βˆ ' xit + µ i
u el componente fijo µ i
e el error de libre movimiento ε it

186
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Otras opciones

El comando xt guarda por defecto varios escalares y matrices. La finalidad de estas variables
guardadas es construir nuevas pruebas que no están disponibles en el Stata.

Escalares
e(N) número de observaciones
e(N_g) número de grupos
e(mss) suma de cuadrados de la regresión
e(tss) suma de cuadrados totales
e(df_m) grados de libertad del modelo
e(rss) suma de cuadrados de los residuos
e(r2) R2
e(r2_a) R2 ajustado
e(F) estadístico F
e(rmse) raíz cuadrada del error cuadrático medio
e(ll) valor de función verosimilitud en logaritmos
e(ll_0) valor de fn. verosimilitud, solo la constante
e(g_max) tamaño del grupo más grande
e(g_min) tamaño del grupo más pequeño
e(g_avg) tamaño del grupo promedio
e(rho) ρ
e(corr) correlación entre µ i , Xb
e(F_f) F para µ i = 0

Matrices
e(b) Vector coeficientes
e(V) matriz de covarianzas de los estimadores

Contraste de Hausman

Consiste en probar la ortogonalidad de los efectos aleatorios y los regresores. Bajo la hipótesis
de no correlación, los estimadores de MCO en el modelo de efectos fijos y el estimador de MCG
son consistentes pero el de MCO es ineficiente. Por lo tanto, bajo la hipótesis nula la diferencia
no debería ser sistemática.

H = ( βˆ RE − βˆ FE )' (V FE − V RE ) −1 ( βˆ RE − βˆ FE ) ~ χ k2

187
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Con una probabilidad menor a 0.06 no existe evidencia para aceptar la hipótesis nula. Por lo
tanto, existe una diferencia sistemática entre el estimador de MCO (efectos fijos) y el de MCG
(efectos aleatorios). Siendo el estimador de efectos aleatorios inconsistente.

188
Stata 10.0 para economistas
Humberto Ortiz Ruiz

6.2. Panel Data Dinámico

Este tipo de estmación suele ser aplicable cuando la variable dependiente (la que queremos
explicar) presenta inercia en el tiempo en un contexto de datos de paneles apropiado aplicar
panel dinámico. Ejemplo de estas variables son la participación de mercado de un banco en el
mercado local, pues es razonable que si una firma controló el 40% del mercado en 2003 tenga
una participación parecida en 2004. El número de trabajadores en una firma también presenta
esta inercia pues los cambios tecnológicos ni los cambios en la escala suelen ser bruscos si no
que se reparten en un período más de tiempo largo.

Para modelar esta inercia se agregan rezagos de la variable dependiente, pero ello haría que
tengamos variables dependientes al lado derecho de la ecuación, lo que causaría un problema
de endogeneidad (y por ello los parámetros serían sesgados e inconsistentes). Para que ello
no ocurra debemos emplear instrumentos.

Para tratar el tema de la exogeneidad de las variables del lado derecho de la ecuación, estas se
clasificaran en endógenas, exógenas y predeterminadas.

Pero el empleo de instrumentos se realiza mediante las condiciones de ortogonalidad del


Método Generalizado de Momentos.

6.2.1. Estimador Arellano Bond

El modelo básico de datos de panel dinámico es:


p
yit = ∑ α j yi , t − j + xit β1 + wit β 2 + vi + ε it
j =1

xit es un vector 1xk1 de variables estrictamente exógenas.


β1 Es un vector k1 × 1 de parámetros estimados
wit es un vector 1 × k2 de variables predeterminadas.
β 2 es un vector k2 × 1 de parámetros estimados.
vi Son los efectos aleatorios que son independientes e idénticamente distribuidos (i.i.d.) con
2
varianza σv .
2
ε it son i.i.d sobre toda la muestra con varianza σε .
donde

yit es variable dependiente para el individuo i en el tiempo t .

El modelo puede sintetizarse en:

189
Stata 10.0 para economistas
Humberto Ortiz Ruiz

yi = X iδ + viιi + ε i

Método Generalizado de Momentos

Planteamos las condiciones de ortogonalidad poblacionales:

E [Ψ ( w,θ )] = 0

w : vector aleatorio
Ψ : vector de funciones rx1 (# de instrumentos)
θ : vector de parámetros kx1
r≥k : al menos tantas funciones como parámetros.

w1 ,..., wn : muestra de N observaciones de la población.

MGM minimiza una forma cuadrática que es la medida de distancia de bn (c) a cero.

1 1
θˆ = arg min ( ∑ Ψ ( wi , c)) '
n
An (
n
∑ Ψ (wi , c)) r ×1
c∈θ i 1× r r × r

An := matriz de ponderaciones de los momentos. (Se empleará la inversa de la matriz de var-


cov de las condiciones de ortogonalidad, por lo general)

En la metodología de Arellano-Bond primero se diferencian el modelo, supongamos que el


modelo es:

yit = α1 yi , t −1 + α 2 yi , t − 2 + xit β + vi + ε it

Lo que se obtiene es:

∆yit = ∆α1 yi , t −1 + ∆α 2 yi , t − 2 + ∆xit β + ∆ε it

 y i,t − y i,t io+ p 


 io +1+ p 
y − y i,t io+1+ p 
∆y i =  i,t io+2+ p 
  
 
 y iTi − y iTi −1 

190
Stata 10.0 para economistas
Humberto Ortiz Ruiz

 X i,t − X i,t io+ p 


 io +1+ p 
X − X i,t io+1+ p 
∆X i =  i,t io+2+ p 
  
 
 X iTi − X iTi −1 

 ε i,t − ε i,t io+ p 


 io+1+ p 
ε − ε i,t io+1+ p 
∆ε i =  i,t io+2+ p 
  
 
 ε iTi − ε iTi −1 

La matriz de instrumentos se forma del siguiente modo:

Tenemos dos rezagos (por lo que perdemos dos observaciones por individuo), con la
diferenciación se pierde una observación más por lo que el número de filas es de T-p-1.

Como las xit contienen regresores estrictamente exógenos ∆xit van a servir como sus propios
instrumentos, por lo que tenemos k1 columnas al final de la matriz. Asumiendo que las ε it no
están autocorrelacionadas, para cada período podemos emplear los rezagos de la dependiente
como instrumentos: en t=4 podemos emplear y1 , y 2 , para t=5 podemos emplear y1 , y 2 , y 3 ,
hasta que para t= T podemos emplear y1 , y 2 , y 3 ... yT −3 , yT − 2 .

T −2
Finalmente tenemos ∑m + k
m= p
1 columnas:

Las variables endógenas se tratan del mismo modo que las variables dependientes rezagadas
(siendo los rezagos de orden p o mayores instrumentos válidos, mientras que para las
predeterminadas los rezagos p-1 o mayores son instrumentos válidos.

Para el caso de paneles incompletos se eliminan las filas donde no hay datos y se reemplazan
con ceros las columnas donde no se requieran datos.

Para el modelo anterior:

y yi 3 0 0 0  0 0 0 ∆X i 5 
 i2 
 0 0 yi1 yi 2 yi 3  0 0 0 ∆X i 6 
Zi =            
 
 
 0 0 0 0  0 yi 2  yi ,T − 2 ∆X iT 

191
Stata 10.0 para economistas
Humberto Ortiz Ruiz

 ε i,t − ε i,t io+ p 


 io+1+ p 
ε − ε i,t io+1+ p 
La matriz de covarianzas de ∆ε i =  io+2+ p  es:
i,t

  
 
 ε iTi − ε iTi −1 

 2 −1 0  0  0
 
−1 2 −1  0  0
H i = E[ε i*ε i* ] =   
'
    
 
0 0 0  2 − 1
0  − 1 2 
 0 0
Finalmente el vector de coeficientes es:

n ' n
−1 ' *
δˆ1 = Q1 ( ∑ X i * Z i ) A1 ( ∑ Z i yi )
i =1 i =1
n ' n
' *
Q1 = ( ∑ X i * Z i ) A1 ( ∑ Z i X i )
i =1 i =1
n
'
A1 = ∑ Z i H i Z i
i =1

192
Stata 10.0 para economistas
Humberto Ortiz Ruiz

6.2.2. Aplicación

1era etapa

Arellano-Bond dynamic panel-data estimation Number of obs = 611


Group variable: id Number of groups = 140
Time variable: year
Obs per group: min = 4
avg = 4.364286
max = 6

Number of instruments = 41 Wald chi2(1


15) = 1624.40
Prob > chi2 = 0.0000
One-step results

n Coef. Std. Err. z P>|z| [95% Conf. Interval]

n
L1. .7080866 .1456767 4.86 0.000 .4225654 .9936077
L2. -.0886343 .0448856 -1.97 0.048 -.1766084 -.0006602
w
--. -.605526 .0661685 -9.15 0.000 -.7352138 -.4758382
L1. .4096717 .1082166 3.79 0.000 .197571 .6217723
k
--. .3556407 .037385 9.51 0.000 .2823674 .428914
L1. -.0599314 .0566394 -1.06 0.290 -.1709425 .0510797
L2. -.0211709 .0418278 -0.51 0.613 -.1031519 .0608101
ys
--. .6264699 .1349141 4.64 0.000 .3620432 .8908967
L1. -.7231751 .1846245 -3.92 0.000 -1.085033 -.3613177
L2. .1179079 .1441364 0.82 0.413 -.1645943 .4004101
yr1980 .0113066 .0140743 0.80 0.422 -.0162786 .0388917
yr1981 -.0212183 .0206732 -1.03 0.305 -.0617371 .0193005
yr1982 -.034952 .0221406 -1.58 0.114 -.0783467 .0084427
yr1983 -.0287094 .0251748 -1.14 0.254 -.078051 .0206323
yr1984 -.014862 .0284833 -0.52 0.602 -.0706883 .0409642
_cons 1.03792 .6221795 1.67 0.095 -.1815295 2.257369

Instruments for differenced equation


GMM-type: L(2/.).n
Standard: D.w LD.w D.k LD.k L2D.k D.ys LD.ys L2D.ys D.yr1980 D.yr1981 D.yr1982 D.yr1983 D.yr1984
Instruments for level equation
Standard: _cons

Test de Sargan

De acuerdo al test de Sargan existe evidencia para rechazar la hipótesis nula que la
sobreidentificación es válida. Cabe mencionar que dicho test tiende a sobre-rechazar en
presencia de Heterocedasticidad. A continuación estimaremos el mismo modelo pero con los
estimadores robustos.

193
Stata 10.0 para economistas
Humberto Ortiz Ruiz

Tanto como en el primer modelo que asume homocedasticidad como el actual rechazan la
hipótesis nula de carencia de autocorrelación de primer orden en los residuos diferenciados.
Pero no implica que los estimadores sean inconsistentes, si existiera correlación de segundo
orden en los residuos diferenciados eso implicaría que los estimadores son inconsistentes que
de acuerdo los test no puede afirmarse la inconsistencia.

194
Stata 10.0 para economistas
Humberto Ortiz Ruiz

2 etapas
Arellano-Bond dynamic panel-data estimation Number of obs = 6 11
Group variable: id Number of groups = 1 40
Time variable: year
Obs per group: min = 4
avg = 4.3642 86
max = 6

Number of instruments = 41 Wald chi2(1


1 5) = 2282. 22
Prob > chi2 = 0.00 00
Two-step results

n Coef. Std. Err. z P>|z| [95% Conf. Interval]

n
L1. .65596 67 . 090028 7. 29 0. 000 .479 515 .83241 84
L2. - .07299 92 .0 270121 -2. 70 0. 007 -.1259 419 -.02005 66
w
--. - .51320 88 .0 537642 -9. 55 0. 000 -.6185 847 -.40783 29
L1. .32896 85 .0 961446 3. 42 0. 001 .1405 285 .51740 85
k
--. .26943 84 .0 438193 6. 15 0. 000 .1835 541 .35532 26
L1. .02164 93 . 050406 0. 43 0. 668 -.0771 447 .12044 32
L2. - .04090 21 .0 258317 -1. 58 0. 113 -.0915 314 .00972 71
ys
--. .59174 29 .1 152412 5. 13 0. 000 .3658 743 .81761 15
L1. -.5720 21 .1 396141 -4. 10 0. 000 -.8456 596 -.29838 25
L2. .11726 42 .1 136713 1. 03 0. 302 -.1055 273 .34005 58
yr1980 .00926 21 .0 107871 0. 86 0. 391 -.0118 802 .03040 44
yr1981 - .03470 86 .0 198697 -1. 75 0. 081 -.0736 524 .00423 52
yr1982 - .04328 07 .0 210895 -2. 05 0. 040 -.0846 155 -.0019 46
yr1983 - .02776 04 .0 214655 -1. 29 0. 196 -.069 832 .01431 12
yr1984 - .03356 13 .0 224111 -1. 50 0. 134 -.0774 862 .01036 36
_cons .49399 61 .4 692208 1. 05 0. 292 -.4256 597 1.4136 52

Warning: gmm two-step standard errors are biased; robust standard


errors are recommended.
Instruments for differenced equation
GMM-type: L(2/.).n
Standard: D.w LD.w D.k LD.k L2D.k D.ys LD.ys L2D.ys D.yr1980 D.yr1981 D.yr1982 D.yr1983 D.yr1984
Instruments for level equation
Standard: _cons

195
Stata 10.0 para economistas
Humberto Ortiz Ruiz

xtabond n l(0/1).w l(0/2).(k ys) yr1980-yr1984, lags(2) twostep

A pesar que Arellano y Bond recomiendan no usar este modelo para hacer inferencia es una
aproximación sobre el Test de Sargan bajo homocedasticidad. Existe evidencia para aceptar la
hipótesis nula de validez de los instrumentos.

196

Você também pode gostar