Está en la página 1de 124

UNIVERSIDAD NACIONAL DEL CALLAO

Facultad de Ciencias Econmicas


Escuela Profesional de Economa

MANUAL DE STATA

Curso: Econometra I
Profesor: Erix Aldo Ruiz Mondaca

GESTIN DE BASE DE DATOS CON STATA

Asistente: David Esparta Polanco


david.esparta@gmail.com

Cap. 1

Introduccin

1.1 El entorno de STATA 11


Al momento de iniciar la sesin en STATA, esta mostrar cuatro ventanas importantes:

Otras ventanas a tomar en consideracin son:


1. STATA Viewer: Podemos acceder a la informacin online y a las ayudas
que nos otorga el programa.
2. STATA Do-File Editor: Es una ventana que funciona como editor de
texto para poder guardar y ejecutar una lista de comandos programados.
3. STATA Data Editor: Nos permite digitar y modicar los datos de la
misma forma que una hoja de Excel.
4. STATA Browser: Accedemos a la ventana de datos sin poder modicar
su contenido.
5. STATA Graphs: Nos muestra una ventana con el grco que ejecutamos.

1.2 La Barra de Herramientas


La barra de herramientas nos permite realizar operaciones rutinarias como abrir,
guardar, imprimir algn archivo, adems de otras particularidades.

Icono

Signicado
Nos permite abrir una base de datos con extensin *.dta.
Nos permite guardar una base de datos que est siendo utilizada.
Nos permite imprimir el contenido registrado en la ventana del
Stata Result.
Nos permite iniciar, cerrar, suspender o resumir una bitacora (la
cual se guardan con extensin *.log o *.smcl). Es til para
guardar los resultados mostrados por el Stata Result.
Nos muestra la ventana del Stata Viewer oculta.
Nos indica la ventana del Stata Graphic.
Nos permite iniciar el uso del Stata Do-File.
Nos permite abrir la ventana del Stata Editor que esta oculta.
3

Nos permite abrir la ventana del Stata Browser que esta oculta.
Ordena al Stata continuar la ejecucin de un comando que fue
detenido.
Ordena al Stata detener la ejecucin de un comando.

1.3 Tipos de Archivo


Stata reconoce 4 tipos de archivos:
1. Archivo *.dta

: Lee base de datos del entorno de STATA.

2. Archivo *.do

: Lee el Do-File, la cual contiene una serie de


programas y/o funciones.

3. Archivo *.log

: Guarda los resultados que arroja el STATA, tambin


llamado bitcora.

4. Archivo *.gph

: Guarda los gracos creados en el STATA.

1.4 Sintaxis de los Comandos del STATA


La estructura general de la sintaxis bsica de los comandos en el STATA es:
[pre x :] command [varlist] [if expr ] [in] [weight] [using lename] [; options]
Donde:
pref ix

: Permite repetir las ejecuciones de un determinado comando


o modicar el input y/o output de la base de datos.

command

: Indica el comando del STATA.

varlist

: Indica la lista de nombres de variables.

weight

: Indica la variable de ponderacin.

if

: Indica una expresin lgica condicional .

exp

: Indica la expresin matemtica utilizada para la condicional.

in

: Seala el rango de observaciones que queremos analizar.

f ilename : Seala el nombre del archivo.


options

: Seala una o ms opciones que aplica el comando.


4

1.5 Expresiones Lgicas del STATA


Las siguientes expresiones nos servirn para la programacin en STATA.

1.6 Esquema de un Archivo de Trabajo


A la hora de trabajar con el STATA (especcamente en el archivo Do-le) es
recomendable mantener el siguiente esquema de trabajo:

1.7 Recursos del STATA


STATA cuenta con una documentacin extensa la cual puede encontrarse en el
mismo software as como tambin en la web.
a). Guides User STATA: La gua de usuario se accede en la barra de herramientas a travs de la siguiente ruta: Help >PDF Documentation. Esta
gua es muy importante para los usuarios que comienzan a trabajar con
STATA.
b). STATA Journal (SJ) y STATA Technical Bulletin (STB): Presentan documentacin acerca de nuevos comandos que no estn incluidos en el software, la cual pueden ser descargados por la web.
c). Otras Fuentes:
http://www.stata.com/support/
Incluye un resumen de lo que hace el STATA. En particular se recomienda
ver la parte de respuestas: FREQUENTLY ASKED QUESTION (FAQs).
http://www.ats.ucla.edu/STAT/stata
Provee diversos tutoriales y videos para aprender STATA.

1.8 Comandos de Ayuda del STATA


Existen diversos comandos que sirven como ayuda para el manejo de STATA,
entre ellas tenemos:
a). help : Es muy til si se conoce el nombre comando para la cual se necesita
ayuda.
Example 1 help regress
b). search : Busca una palabra clave "keyword" en los archivos ociales de
ayuda, FAQs, examples, the SJ y el STB, pero no del internet.
Example 2 search ols
c). net search : Busca en Internet paquetes instalables, incluyendo cdigos
del SJ y el STB.
Example 3 net search random e ect
d). ndit : Provee la ms amplia bsqueda de keyword con informacin relacionado al STATA. Es til ya que no se necesita especicar el keyword de
manera completa.
6

Example 4 ndit weak inst


e). hsearch : Busca el keyword en todos los archivos de ayuda (con extensin
.sthlp o .hlp). El inconveniente es que se necesita el keyword completo.
Example 5 hsearch weak instrument

Cap.2

Gestin de Base de
Datos

Aprenderemos en qu consiste una sesin de trabajo en STATA y exploraremos


algunos comandos que nos permitan realizar un anlisis de base de datos haciendo uso del Do-le. Para dicho n, explicaremos el funcionamiento de esta
herramienta del STATA.

2.1 El Do-File
STATA cuenta con una ventana que nos permite trabajar con una serie de
comandos y almacenarlas. Estos archivos son muy importantes por los siguientes
motivos:
Permite registrar una de serie de comando, la cual representa todo el
procedimiento de nuestro trabajo.
Permite ir corrigiendo posibles errores que se pueden generar en la elaboracin y ejecucin de nuestro trabajo.
Permite poder nuevamente replicarlo en sesiones posteriores sin necesidad
de crearlo nuevamente.
Adems, sirve como un mecanismo de seguridad que permite regresar a la
base de datos original despus de haberle hecho diversas transformaciones.
Para acceder al Do-le hacemos clic al cono correspondiente en la barra de
herramientas o simplemente presionamos la siguiente sucesin de teclas Ctrl+8.
Recuerde que el archivo Do-le se guarda con extensin *.do.
Con respecto a las formas de poder ejecutar los comandos, se puede hacer
(execute do) ubicado en la parte superior derecha de la
a travs del icono
barra de herramientas del archivo Do-le o presionando los teclados Ctrl+D
una vez que sombremos el comando queramos correr. Una vez realizada esta
accin, se reejar los resultados en la ventana Result View del STATA.

2.1.1 Realizando Comentarios en el Do-File


El Do-le puede incluir comentarios incrementando el entendimiento de un programa o archivo de trabajo. Existen diferentes formas de incluir un comentario:
Una simple lnea de comentario empieza con un asterisco ( ) ; donde
STATA ignorar tales lneas.
Para colocar un comentario en la misma lnea donde fue escrito el comando
utilizamos dos slash (= =) :
Para lneas con mltiples comentarios, colocamos el texto entre los smbolos (= ) al inicio y ( =) al nal.
En el caso de que se haga uso de un comando la cual presenta una expresin
muy larga podemos utilizar tres slash (= = =) en medio de la expresin y
as continuar en la siguiente lnea la parte faltante. STATA entender
como si fuera una nica lnea de comando.
Por ltimo, tambin se utilizan los smbolos de comentarios con nes decorativo.
Example :
*********************************************
**USANDO COMENTARIOS EN EL DO-FILE**
*********************************************
*Este es mi primer comentario
clear

// este es un comentario para el comando clear

/*
este es
un comentario
con lneas mltiples
*/
sysuse ///
auto.dta

N ote : Como ver los comentarios se resaltan de color verde.

2.1.2 Iniciando la Estrucutra de un Do-le


Como se explic en el esquema usual de un do-le, esta empieza con el comando
clear. Este comando nos permite limpiar por inercia una base de datos y
etiquetas existentes en la memoria del STATA. Es importante saber que este
comando presenta algunas opciones que se mostrarn a continuacin:
Example :
Remueve la base de datos y las etiquetas:
clear
Adems, puede remover funciones del M AT A1 , resultados guardados internamente por el STATA, adems de matrices, programas y archivos
*.ado:
clear

[mata; result; matrix; program; ado]

Si se desea borrar todo de una sola vez, se usa la siguiente opcin:


clear all

2.1.3 Asignando Memoria al STATA


Dado que existen bases de datos con diferentes tamaos, es posible que ante
bases demasiados grandes y pesadas, el STATA no podr reconocerlo por falta
de memoria, es por ello que puede encontrarse con el siguiente mansaje de error:

1 MATA es un lenguaje de programacin matricial que puede ser usado por quienes desean
calcular iteraciones en un entorno de matrices.

10

Generalmente se suele trabajar con una capacidad de memoria de 20m


(megabyte), para realizar esta operacin escribimos lo siguiente2 :
set memory 20m

2.1.4 Manejo de Directorios


Cuando se incia sesin en STATA, por defecto trabaja en la carpeta en donde
se encuentra ubicado el programa. Si por ejemplo, el software se ubicase en el
disco "C:nArchivos de Programas" entonces la carpeta de trabajo o directorio se encontrar en la siguiente ruta "C:nArchivos de ProgramasnStata
11n". Para saber con qu directorio se est trabajando actualmente se utiliza
el comando pwd, y el resultado se reejar de la siguiente forma:
Example :
pwd
C:nArchivos de programanStata11
Tambin es posible saber lo anterior viendo la parte inferior izquierda del
entorno del STATA.

2 Para saber cules son las diversas opciones que presenta el STATA para trabajar con
diferentes tamaos de base de datos recurra al comando help set eligiendo la opcin memory
o simplemente escriba help memory.

11

Supongamos que en el disco "D:n" se crea una carpeta con el nombre "Econometra
I" la cual nos va a servir para guardar nuestros trabajos, entonces, el nuevo directorio se encontrara en la ruta : "D:nEconometria I ". Ahora utilizamos el
comando cd para cambiarnos al nuevo directorio indicando la nueva ruta entre
comillas de la siguiente manera:
Example :
cd "D:nEconometria I "
D:nEconometria I
STATA tambin cuenta con otros comandos para el manejo con directorios,
como son:
El comando mkdir nos permite crear una carpeta o directorio:
mkdir sesion_1
El comando dir nos permite observar el listado de todos los archivos que
se encuentran en nuestra carpeta de trabajo.
dir

2.1.5 Guardar los Resultados del STATA


Como se mencion, los resultados que arroja STATA puede ser almacenados
en una bitcora, es decir, crear un archivo *.log o *.smcl a travs del comando
log3 .
Para crear una bitcora llamada primera_bitacora recurrimos a la siguiente sintaxis:
log using primera_bitacora
El STATA por defecto crear una bitcora con formato *.scml y se visualizar en el directorio que estamos trabajando.
Example :
Si desea crear una bitcora con formato *.log escribimos:
log using primera_bitacora.log
Para dejar de registrar momentneamente los resultados usamos:
log o
3 Recurra

al comando help log para ver todas las opciones que presenta.

12

Para volver a registrar los resultados usamos:


log on
Para cerrar la bitcora usamos:
log close
Para volver a reanudar la bitcora:
log using primera_bitacora,append
Para sobreescribir en la bitcora:
log using primera_bitacora,replace
Para observar una bitcora ya elaborada en el Result View usamos:
type primera_bitacora.scml

2.2 Abrir una Base de datos


Existen diferentes formas de invocar una base de datos, ya sea en formato del
STATA ( :dta) o en otros formatos ( :txt , :xls , etc).

2.2.1 Abriendo una base de datos con formato del STATA.


Para abrir una base de datos desde la ventana principal del STATA debemos
acceder a la siguiente ruta: File > Open. Luego aparecer un cuadro de dilogo
para buscar y elegir la base de datos que deseamos trabajar.

13

Si deseamos llamar una base de datos a travs del Do-le, basta con guardar
dicha base en el directorio actual que se est trabajando y llamarlo usando el
comando use.
Example :
Supongamos que hemos guardado en la carpeta "Econometria I " la base de datos enaho01-2009-100.dta. Para poder invocarlo escribimos:
use enaho01-2009-100.dta

En la parte inferior izquierda del entorno del STATA se apreciar las variables que contiene la base de datos enaho01-2009-100.dta.
Adems, STATA cuenta con base de datos dentro de sus sistema como ejemplos aplicativos, para invocarlos se utiliza el comando sysuse.
Example :

Uno de las base de datos que cuenta el STATA es auto.dta.

sysuse auto.dta

2.2.2 Importando una base de datos de otros formato.


Segn el tipo de archivo que queremos importar la base de datos debemos usar
el comando indicado. El comando insheet lee base proveniente de una hoja
de clculo como por ejemplo Excel que son guardados por un spreadsheet o un
programa de bases como datos delimitado por comas ( :csv) o datos delimitado
por tabulaciones ( :txt). Es importante mencionar que la primera lnea de la
hoja de clculo se registre el nombre de las variables y a partir de la segunda
la se comienzan a registrar los datos.
Example : Supongamos que tenemos un archivo en Excel llamado "archivo1.xlsx "
con la siguiente estructura:
14

Debemos armar la base de datos de la siguiente forma:

Luego lo guardamos en nuestra carpeta de trabajo ("D:nEconometria I ") con


formato Texto (delimitado por tabulaciones) o CSV (delimitado por comas).

15

Finalmente utilizamos el comando insheet para importar la base de datos


como se indica a continuacin:
insheet using archivo1.csv
(Si fue guardado como delimitado por comas)
insheet using archivo1.txt
(Si fue guardado como delimitado por tabulaciones)

2.3 Convertir una Base de Datos de Otros Archivo


en Formato STATA
STATA cuenta con una herramienta que permite convertir base de datos de
SPSS, Matlab, Gauss, SAS, etc. al formato *.dta a travs del sotfware
STAT/TRANSFER.

16

Para acceder a este software basta con hacerle clic y posteriormente nos
saldr una ventana de dialogo solicitndonos la siguiente informacin:
Input F ile T ype : Indicamos el tipo de archivo en la cual se encuentra
nuestra base de datos original.
F ile Specif ication : Indicamos la ruta donde se encuentra nuestra base
de datos original haciendo uso del botn Browse.
Output F ile T ype : Indicamos el tipo de archivo al cual deseamos que la
base de datos se convierta.
F ile Specif ication : Indicamos la ruta donde queremos colocar la base
de datos convertida haciendo uso del botn Browse.
Example :
Para nuestro ilustrativo contamos con una base de datos de la Enaho en
formato de SPSS llamada "Enaho01A-2009-400.sav " que se encuentra en la
siguiente ruta "D:nDAVIDndatabase" y lo queremos convertir a un archivo de
base de datos del STATA con el mismo nombre en nuestra carpeta de trabajo
"D:nEconometria I ".
Para desarrollar esta aplicacin realizamos los siguientes pasos:
1. Abrimos la ventana de dialogo del STAT/TRANSFER.
2. En la seccin Input F ile T ype hacemos clic a la barra desplegable y
elegimos el formato SPSS Data File ya que se debe un archivo de base de
datos del SPSS 15.

3. En la seccin F ile Specif ication hacemos clic en el botn Browse para


denir la ruta donde se encuentra nuestra base original. Observe que
en la barra "Unidades" (ubicado en la parte inferir derecha) escogemos
el disco d, En la barra "Mostrar Archivos Tipos" (ubicado en la parte
17

inferir izquierda) por default se muestra SPSS Data File (*.SAV). En


el cuadro "Carpetas" hacemos clic en las carpetas segn como se seala
la ruta del archivo de origen d:n > david > database. Finalmente
hacemos clic en el archivo original llamado Enaho01A-2009-400.sav.

4. En la seccin Output F ile T ype hacemos clic a la barra desplegable y


elegimos el formato Stata Version 4-5 la cual es el formato de la base de
datos que queremos obtener.

5. En la seccin F ile Specif ication hacemos click en el boton Browse para


denir la ruta donde queremos que se encuentre nuestra base convertida.
Observe que en la barra "Unidades" (ubicado en la parte inferir derecha)
escogemos el disco d, En la barra "Mostrar Archivos Tipos" (ubicado
en la parte inferir izquierda) por default se muestra Stata version 4-5
(*.DTA). En el cuadro "Carpetas" hacemos clic en las carpetas segn
como se seala la ruta donde se guardar la base convertida d:n >
Econometria I. Finalmente escribimos el nombre de nuestra nueva base,

18

este caso Enaho01A-2009-400.dta.

6. .Finalmente hacemos clic en el botn Transfer.

19

2.4 Guardar una Base de Datos


Una vez trabajado y modicado la base de datos es posible guardarlo con el
comando save.
Example :
Imaginemos que hemos trabajado con la base "archivo1.xls" y queremos
guardarlo la nueva base con el nombre "archivo1_modicado.dta"
*Usando el comando save para guardar la nueva base con el nombre
*archivo1_modicado.dta
save archivo1_modicado.dta

2.5 Inspeccin de Base de Datos


En esta seccin aprenderemos comandos que nos permitan dar una revisada a
la base de datos, es decir, saber con qu esquema de datos y tipos de variables
nos estamos enfrentando.
Usualmente despus de abrir una base de datos, recurrimos a la siguiente
rutina de inspeccin de una base de datos:
1. Descripicn de la base de datos con el comando describe.
2. Observar la base de a travs del comando browse o edit. El comando
browse nos permite ver la base de datos sin poder modicarla y el comando
edit nos permite ver la base de datos pudiendo modicarlo.
3. Inspeccionar las variables de la base de datos usando el comando inspect.
4. Generamos un diccionario de variables con el comando codebook.
5. A veces podra ser de ayuda hacer una lista de los valores de algunas
variable de inters para un determinado rango de observaciones a travs
del comando list.
6. Realizar una tabla resumen de las variables numricas con el comando
summarize.
Retornando al ejemplo de la base de datos auto.dta, utilizamos los siguientes
comandos:
Example :
*Retomamos la base de datos auto.dta

20

sysuse auto.dta,clear
*Describimos la base auto.dta
describe
// para describir todas las variables
d price mpg rep78
// para describir las variables price, mpg, rep78
*Vemos la ventana de la base de datos
browse
// para observar todas las variables
br turn foreign length
// para observar las variables turn foreign length
*Inspeccionamos las variables
inspect
// para inspeccionar todas las variables
ins headroom trunk
// para inspeccionar las variables headroom trunk
*Creamos un diccionario de variables
codebook
// diccionario de todas las variables
codebook foreign gear_ratio // diccionario de variables foreign gear_ratio
*Realizamos una lista de valores de algunas variables
list make price mpg // listado de los valores de make price mpg weight
l make price mpg in 25/60 // listado de valores entre la observacin 25 y 60
*Realizamos un cuadro estadstico resumen de las variables
summarize price mpg weight // price mpg weight
sum length displacement foreign // resumen de length displacement foreign
*Realizamos un cuadro resumen detallado de algunas variables
sum price mpg weight,detail // resumen detallado de price mpg weight

2.6 Generacin y Transformacin de Variables


Para la creacin de nuevas variables STATA cuenta con el comando generate
y egen, la cual se explica la diferencia entre ambos a continuacin:

21

El comando generate nos permite generar variables haciendo uso de expresiones matemticas, lgicas, numricas. Si bien es cierto que STATA
solamente reconoce los comandos con letras minsculas, tambin es importante decir que tambin hace una diferenciacin de los nombres de las
variables entre si son minsculas o maysculas. Por ejemplo, generar una
variable llamada EsTaDo es diferente a que si lo denominamos estado o
ESTADO.
El comando egen es una extensin del anterior, que permite utilizar expresiones que incluyan funciones ms complejas del STATA como es el caso
de medias, mximos, mnimos, desviacin estndar, promedios mviles,
variables estandarizadas, etc.
Example :
*Creacin de variables usando el comando "generate" con funciones:
generate id=_n //generamos una variable llamada id como
// identicador para cada observacin
generate T=_N //generamos una variable llamada T como
// identicador del total de observaciones
gen ln_mpg=ln(mpg) //generamos una variable llamada ln_mpg
// que es igual al logaritmo natural del mpg
gen exp_mpg=exp(mpg) //generamos una variable llamada
// exp_mpg igual al exponencial natural del mpg
gen sqrt_mpg=sqrt(mpg) //generamos una variable llamada
// sqrt_mpg igual a la raz cuadrada del mpg
gen sum_mpg=sum(mpg) //generamos una variable llamada
// sum_mpg igual a la suma acumulativa del mpg
*Creacin de variables usando el comando "egen" con funciones
egen mean_price=mean(price) //generamos una variable llamada
// mean_price igual a la media del precio
egen median_price=median(price) //generamos una variable llamada
// median_price igual a la mediana del precio
egen mode_price=mode(price) //generamos una variable llamada
// mode_price igual a la moda del precio
egen min_price=min(price) //generamos una variable llamada
// min_price igual al mnimo del precio
egen max_price=max(price) //generamos una variable llamada
// max_price igual al mximo del precio
egen sd_price=sd(price) //generamos una variable llamada
// sd_price igual a la desviacin estndar del precio
egen skew_price=skew(price) //generamos una variable llamada

22

// skew_price igual al valor de la simetra del precio


egen kurt_price=kurt(price) //generamos una variable llamada
// kurt_price igual al valor de la curtosis del precio
En caso que se quiera cambiar los valores de una variable una vez creadas o
de las ya existentes, podemos hacer uso de los comandos replace y recode.
El comando replace permite reemplazar o modicar una variable o sus
respectivos valores. Si se trata de reemplazar valores de una variable
generalmente tendr que cumplir algunas condiciones y se digita despus
del comando generate.
El comando recode permite modicar valores especcos de una variable.
Example :
*Transformacin de variables y sus respectivos valores
*Usando el comando "replace" para cambios en la variable
*Supongamos que a las variables creadas por el comando
*generate y egen, queremos expresar los valores en cientos.
replace
replace
replace
replace
replace
replace
replace
replace
replace
replace
replace

ln_mpg= ln_mpg/100
exp_mpg=exp_mpg/100
sqrt_mpg=sqrt_mpg/100
sum_mpg=sum_mpg/100
mean_mpg=mean_mpg/100
median_mpg=median_mpg/100
mode_mpg=mode_mpg/100
min_mpg=min_mpg/100
max_mpg=max_mpg/100
skew_mpg=skew_mpg/100
kurt_mpg=kurt_mpg/100

*Usando el comando "replace" con condicionales para cambios de


*valores de una variable
*Supongamos que creamos una variable categrica para mpg
*llamada "cat_mpg"que tenga valor de 1 para los primer cuartil,
*2 segundo cuartil, 3 tercer cuartil y 4 cuarto cuartil.
summ mpg,detail
//observamos que la variable mpg tiene valor de 18 hasta el 25% de los
// datos, 20 hasta el 50% de tos datos, 25 hasta el 75% de tos datos y
23

// 41 hasta el 100% de los datos.


gen cat_mpg=1 if mpg<18
replace cat_mpg=2 if mpg>=18 & mpg<20
replace cat_mpg=3 if mpg>=20 & mpg<25
replace cat_mpg=4 if mpg>=25
*Usando el comando recode para recodicar algunos valores especcos de
* las variables.
//Si analizamos a la variable rep78, vemos que presenta valores discretos
// desde 1 hasta el 5 y adems poseen valores perdidos (missing values)
// representados por un punto "." , en este caso vamos a cambiar los
// missing values por el valor de cero. Para dicho n creamos una
//variable igual a rep78 llamada "rep78_recode" para no perder la
//informacin bsica de esta variable y luego la recodicamos.
recode rep78 (.=0), gen(rep78_recode)
sum rep78_recode
//ahora vemos que la variable rep78_recode tiene valores discretas desde
// 0 hasta 5.
//Tambin podramos crear una variable llamada "cat2_mpg" similar
//a cat_mpg utilizando el comando recode de la siguiente forma:
gen cat2_mpg=0
recode cat2_mpg (min/18=1) (18/20=2) (20/25=3) (25/max=4)

2.7 Nombrando y Etiquetando Variables


Si se desea cambiar de nombre a una variable se hace uso del comando rename.
Example :
//De las ltimas variables creadas cambiamos de nombre a la variable
// id y T
rename id ident_obs
ren T ident_total
Si deseamos darle el signicado a la variable, podemos etiquetarlo con el
comando label variable.
Example :

24

//De las ltimas variables creadas etiquetamos a las siguientes:


label variable ident_obs "Identicador de Observaciones"
la var ident_total "Identicador Total"
En el caso que tengamos variables categricas, es til explicar el signicado
de cada uno de los valores discretos, para este proceso usamos los comandos
label dene y label value.
Example :
//De la variable categrica que creamos "cat_mpg" podemos
// etiquetar sus valores de la siguiente forma:
//Primero denimos una etiqueta llamada "rango_mpg"
// y luego etiquetamos los valores
label dene rango_mpg 1 "menos a 18" ///
2 "entre 18 y 20" 3 "entre 20 y 25" 4 "mayor igual 25"
label value rango_mpg cat_mpg
br cat_mpg

2.8 Tipo y Formato de Variables


2.8.1 Tipo de Variables
En STATA existen dos clases de formatos:
Formato Numrico: Se puede encontrar la siguiente clasicacin4 :
Tipo
byte
int
long
oat
double

Byte
1
2
4
4
8

Mnimo
-127
-32,767
-2,147,483,647
-1.70141173319*10^38
-8.9884656743*10^307

Mximo
100
32,740
2,147,483,620
1.70141173319*10^38
8.9884656743*10^307

Formato No Numrico: Este tipo es reconocido como cadena de texto o


string. Generalmente se encierran entre comillas y presenta la siguiente
clasicacin:
4 Cuando se genera una variable con datos numricos, STATA por default le asigna un
formato oat.

25

Tipo
str1
str2
..
.

Byte
1
2
..
.

Descripcin
Hasta 1 carcter
Hasta 2 caracteres
..
.

str20

20

Hasta 20 caracteres

2.8.2 Formato de Variables


La forma cmo podemos especicar el formato de las variables es de la siguiente
manera:
Formato Numrico:
Esquema
Primero
luego (opcional)
luego (opcional)
luego
luego
luego
luego (cualquiera)

Smbolo
%
0
#
.
#
e
f
g

luego (opcional)

Descripcin
indica el comienzo del formato
si se quiere alinear el resultado a la izquierda
si se quiere conservar los ceros "principales"
cifra que indique el tamao del resultado
se coloca un punto
nmero de dgitos despus del punto decimal
para notacin cientca. ex: 10e+04
para formato jo. ex: 5000.0
para formato general (STATA muestra
acorde al nmero elegido)
para el formato de "coma"
(no se permite para notacin cientca)

Formato para Fechas:


Esquema
Primero
luego (opcional)
luego
luego (cualquiera)

Smbolo
%
t
d
w
m
q
h
y

Descripcin
indica el comienzo del formato
si se quiere alinear el resultado a la izquierda
se coloca t para indicar formato fecha
para das. ex: 05jul1972
para semanas. ex: 1972w27
para meses. ex: 1972m7
para trimestres. ex: 1972q3
para horas. ex: 1972h2
para aos. ex: 1972

Formato String:

26

Esquema
Primero
luego (opcional)

Smbolo
%
-

luego
luego

#
s

Descripcin
indica el comienzo del formato
si se quiere alinear el resultado a la izquierda
si se quiere alinear el resultado al centro
una cifra para el nmero de caracteres
se coloca s para indicar formato string

Example :
*Formatos Numricos
describe price
list price
format %9.1g price
//nueve dgitos y un decimal
describe price
list price
format %12.1g price
describe price
list price
format %-12.1g price
describe price
list price
//para ver que ha cambiado habra la ventana browse.
save auto_modicada.dta,replace

2.9 Conversin de Variables


STATA es posible generar una variable numrica a partir de una variable string
y viceversa.

2.9.1 De una Variable String Numrica a una Variable Numrica


Para poder realizar esta conversin se recurre a la funcin real() despus del
comando generate. Tambin es posible realizar la misma operacin con el
comando destring donde la variable generada se coloca como opcin en la
misma lnea de comando.
Example :
27

*Para este ejemplo generamos una variable string numrica


*llamada "origen" en base a la variable "foreign", la cual le
*asignamos el cdigo 0 si es Domestic y 1 si es Foreign.
gen origen="1" if foreign==1
replace origen="0" if foreign==0
//A simple vista las variables origen y foreign son iguales,
//pero hay que observar que la primera tiene un formato
//string "str1" y el otro un formato byte.
*Esta variable string numrica "origen" lo convertimos
*en una numerica llamada origen2:
gen origen2=real(origen)
//Como vemos la variable "origen2" tiene formato numrico
//oat
*Ahora realizamos la misma operacin con el comando
*"destring", generando la variable origen3
destring origen, gen(origen3)
//Como vemos la variable "origen3" tiene formato numrico
//byte. Note que el comando generate est como opcin dentro
//de la sintaxis
*Guardamos la base modicada.
save auto_modicada.dta,replace

2.9.2 De una Variable String No-Numrica a una Variable


Numrica
Para poder realizar esta conversin se recurre al comando encode. Este comando codica una variable string a una numrica. Aqu tambin la variable
generada se coloca en la lnea de comando como una opcin. Despus de ejecutar esta operacin es recomendable utilizar el comando label list para observa
las etiquetas que fueron asignadas a los valores de la nueva variable.
Example :
*Para este ejemplo usamos la base auto_modicada.dta.
use auto_modicada.dta,clear
*Supongamos que queremos codicar la variable "make"
* generando una variable denominada "make1".
encode make, gen(make1) label(make_la)
28

label list make_la


*Ahora vemos las etiquetas que fueron asignados a los
*valores
label list make1

2.9.3 De una Variable Numrica a una Variable String


A travs del comando tostring podemos convertir una variable numrica a
string. Aqu tambin la variable generada se coloca en la lnea de comando
como una opcin.
Example :
*Convertimos la variable "foreign" a una variable string
*llamada "foreign2"
tostring foreign, gen(foreign2)
//observe que la variable "foreign2" tiene un formato
//string numrica (str1).
Otro comando interesante es decode, la cual nos permite hacer la misma
labor que tostring pero necesita que los valores de la variable numrica estn
etiquetada.
*Convertimos la variable "foreign" a una variable string
*llamada "foreign3"
decode foreign, gen(foreign3)
//observe que la variable "foreign3" tiene un formato
//string numrica (str8), porque mantiene la etiquetas
//de la variable "foreign".

2.10 Seleccin de Muestra y Variables


Existen ocasiones que no deseamos trabajar con todas las variables u observaciones de la base de datos, por lo tanto, STATA cuenta con los comandos drop
y keep para la seleccin particular de las mismas con la nalidad de obtener
ms memoria para trabajar.
El comando keep permite mantener observaciones o variables en la memoria del STATA.
El comando drop permite eliminar observaciones o variables de la memoria
del STATA.
29

Example :
*Seleccin de variables y observaciones
*Antes guardamos la nueva base trabajada con el nombre
*auto_modicada.dta
save auto_modicada.dta
*Usando el comando "keep" para guardar algunas variables
//Imaginemos que queremos mantener las variables
// price mpg weight length turn displacement foreign
keep price mpg weight length turn displacement foreign
browse // observar la nueva base
*Usando el comando "keep" para seleccionar una muestra
//Imaginemos que seleccionamos una muestra la cual
// cumple con la condicin de que el precio ucte entre
// 3748 y 13466. Para esto utilizamos la condicional if
keep if price>=3748 & price<=13466
br // observar la nueva base
//Si de esta nueva muestra queremos seleccionar las
// primeras 50 observaciones
keep in 1/50
br // observar la nueva base
*Usando el comando "drop" para eliminar algunas variables
//Antes de continuar con el ejemplo invocamos a la base
// auto_modicada.dta que hemos guardado.
use auto_modicada.dta,clear
//Imaginemos que queremos eliminar las variables
// make headroom gear_ratio
drop make headroom gear_ratio
br // observar la nueva base
*Usando el comando "drop" para eliminar una muestra
30

//Imaginemos que eliminemos una parte de la muestra


//la cual cumple con la condicin de que el peso sea
// menor de 4000 libras.
drop weight if weight<4000
br // observar la nueva base
//Si de esta nueva muestra queremos borrar las
//primeras 15 observaciones
drop in 1/15
br // observar la nueva base

2.11 Manipulacin de Base de Datos


La utilidad de manipular base de datos incluye reordenar las observaciones y/o
variables, realizarle cambios temporales y guardarlos paray luego acceder a otra
base dedatos y as combinarlos, obteniendo una nueva base fusionada.

2.11.1 Ordenar Observaciones y Variables


El comando sort ordenar observaciones de manera ascendente acorde a la(s)
variable(s) sealadas. En cambio el comando gsort nos permite ordenarlo de
manera ascendente como descendente.
Example :
*Ordenar observaciones
use auto_modicada.dta,clear
//Podemos ordenar de forma ascendente la variable
// weight
sort weight
br weight
//O en forma descendente
gsort -weight
br weight
//Tambin podemos ordenar de forma ascendente
//la variable foreign y luego la variable price

31

sort foreign price


br foreign price
Tambin se puede ordenar las variables usando el comando order. Este
puede ser til, si por ejemplo uno desea distribuir las variables de una base de
datos a otras bases.
Example :
*Ordenar variables
//Podemos order en el siguiente orden las variables
order weight rep78 price length
//Tambin podemos ordenar las variable de
// forma alfabtica
order _all, alphabetic
Estos comandos son importantes al usar el prejo by(), que nos permite
realizar algunas operaciones por grupo de observaciones.
Example :
*Usando el prejo "by"
//Supongamos que queremos un cuadro resumen
// de las variables "price", "mpg", "weight"
//clasicado por lugar de destino "foreign"
sort foreign
by foreign : sum price mpg weight

//Tambin podemos escribir del siguiente modo:


bysort foreign : sum price mpg weight,d

32

2.11.2 Preservar y Restaurar Base de Datos


En algunos casos, es necesario realizar cambios a una base de datos, desarrollar
algunos clculos y entonces retornar a la base original. El comando preserve
nos permite retener la base de datos y el comando restore nos permite regresar
a la base de datos original. El comando restore se usa inmediatamente despus
del comando preserve.
Example :
*Preservar y Restaurar base de datos
//Imaginemos que a la variable "price" lo modicamos
// sus valores sumando 200 unidades, pero luego
// retornaremos a la variable original
list price in 1/10
preserve
replace price=price+200
list price in 1/10
restore
list price in 1/10

2.12 Fomas de Base de Datos


2.12.1 Formas Long y Wide
Frecuentemente es necesario cambiar la forma de la base de datos. Si tenemos j
medidas de momentos para los i individuos, esta puede ser vista como una data
multivariada en la cual cada momento j es representada por una variable xj, y
el identicador de individuos est representada tambin por una variable. Sin
embargo, para algunos anlisis estadsticos podemos necesitar un variable que
contenga las respuestas para todos los momentos e individuoss.
El comando reshape nos permite transformar una base de datos de forma
larga "long" a una de forma ancha "wide" y viceversa. Como se muestra a
continuacin:

33

Forma Long

Forma Wide

En general para efectos de estimacin es necesario que la base de datos este


en formato long, esta distincin es importante para anlisis de panel data.
Example :
*Formas Long y Wide
//Para ilustrar el uso de este comando, utilizamos la base
//de datos "long_wide.dta".
use long_wide.dta,clear
//en este base nuestro identicador de inidividuos (i) es la
//variable "id" y el de momentos (j) es "year", adems,
//vamos a transformar la data en base a la variable
//"salary" (x)
//Como vemos, la base tiene una forma long, ahora lo
//convertimos en forma wide.
reshape wide salary, i(id) j(year)
//como se puede observar, el comando reshape va a
//convertir a la variable salary en forma wide.
reshape long salary, i(id) j(year)
//como se puede observar, el comando reshape va a
//convertir a la variable salary en forma long.

2.12.2 Forma Colapsada


Hay ocasiones en que la base de datos con forma long puede requerirse para
colapsarlo tal que cada grupo de individuos este representada por una observacin en particular, ya sea por el promedio, la mediana, desviacin estndar,
mximo, mnimo, la suma, etc. de alguna variable en particular. Para hacer
esta operacin recurrimos al comando collapse.
34

Example :
*Forma Colapsada
//De la base de datos "long_wide.dta",mostrado
//en forma long, colapsamos la base en base al
//promedio, desviacin estandar, maximo,minimo,
//suma total del salario "salary" por individo.
collapse (mean) meansal=salary (median) ///
mediansal=salary (sd) sdsal=salary (max) ///
maxsal=salary (min) minsal=salary (sum) ///
sumsal=salary, by(id)
br

2.13 Fusin de Base de Datos


Es comn la combinacin de varias bases de datos. Se va a mostrar dos operaciones bsicas: aadir variables y aadir observaciones. Los comandos asociados
a estas operaciones son merge, append y joinby.
El comando merge se utiliza para aadir variables, es decir, une dos bases
de manera horizontal. Los cheros de datos deben de tener una variable
de identicacin y adems deben de estar ordenados por dicha variable.
Este comando requiere de dos bases de datos, uno se va a denominar base
master al cual se le van aadir las variables y una base using la cual
contiene las variable que se van a aadir a la base master. Al realizar
el merge crea una variable "_merge" de manera automtica que toma
valores dependiendo si el registro de los datos est presente en una de las
bases o en ambos. Cuando el valor de la variable "_merge" es 1 quiere
decir que el dato solo aparece en la base master, 2 cuando aparece en la
base using y 3 cuando aparece en ambos.
El comando append se utiliza para aadir observaciones, es decir, une a
dos bases de manera vertical. Aqu tambin ser necesario una base master
y una base using, adems la base originada tendr una forma long.
El comando joinby forma todo los pares de combinaciones dentro de cada
grupo a partir de dos bases de datos, una master y otra using. La base
master contiene variables para cada individuo clasicado por grupos y
la base using contiene variables a nivel de grupos, entonces, el comando
joinby colocar los valores de las variables segn al grupo que pertenece
cada individuo.

35

Example :
*Fusionando bases con el comando "append"
//Para este ejemplo usaremos las bases de datos
// "database1.dta" y "database2.dta". Dado que
//tienen la misma cantidad de columnas pero se
//diferencian en nmeros de las sera conveniente
//juntarlos verticalmente
use database1.dta,clear
br
append using database2.dta
br
save database12.dta,replace
//hagamos lo mismo con la bases "database3.dta"
// y "database4.dta"
use database3.dta,clear
br
append using database4.dta
br
save database34.dta,replace
//En este ltimo caso vemos que existe un inconveniente
//con la variable relacionado al sexo del individuo, debido
//a que en ambas bases dicha variable no se ha escrito
//de la misma forma, es por ello de la importancia de escribir
//el nombre de las variables de manera idntica. Arreglamos
//este problema a continuacin:
use database3.dta,clear
br
rename Sexo sexo
br
save database03.dta,replace
use database03.dta,clear
br
append using database4.dta
br
save database034.dta,replace
*Fusionando bases con el comando "merge"
//Para este ejemplo usaremos las bases de datos
36

// que creamos anteriormente "database12.dta" y


// "database034.dta". Para realizar esto, debemos
//ordenar la variable (o variables) en comn en
//ambas bases. En este caso, las variables en comn
//son la variable hogar y el nombre.
use database12.dta,clear
br
sort hogar nombre
br
save database12m.dta,replace
use database034.dta,clear
br
sort hogar nombre
br
save database034m.dta,replace
//ya ordenadas, pasamos a fusionarlas horizontalmente
use database12m.dta,clear
merge hogar nombre using database034m.dta
br
save databasemerge.dta,replace
*Fusionando bases con el comando "joinby"
//Para este ejemplo usaremos las bases de dato
// nal "databasemerge.dta" y "database5.dta".
//Para realizar esto, debemos ordenar la variable
//( o variables) en comn en ambas bases. En este
//solo es la variable hogar.
use databasemerge.dta,clear
br
sort hogar
br
save databasemergeb.dta,replace
use database5.dta,clear
br
sort hogar
br
save database5b.dta,replace
//ya ordenadas, pasamos a fusionarlas.
37

use databasemergeb.dta.dta,clear
joinby hogar using database5b.dta
br
save databasejoinby.dta,replace

2.14 Tabulaciones y Tablas


En esta seccin veremos diversas formas de presentar tablas de estadsticas
descriptivas, entre las tenemos:

2.14.1 Tabulate
El comando tabulate muestra una tabla la cual seala una lista de los distintos
valores que tiene una variable con su frecuencia absoluta, porcentual y acumulada. Es recomendable usar este comando para aquellas variables con pocos
valores diversos. Tambin es til para crear variables dummy con ayuda del
comando generate y adems tabular por tipo de individuo con el prejo by. El
comando tabulate puede mostrarnos tablas tanto de un solo sentido como de
doble sentido

2.14.2 Table
El comando table nos permite crear tablas de doble y triple sentido, mostrando
las frecuencias absolutas o porcentuales visto de forma horizontal o vertical.

2.14.3 Tabstat
El comando tabstat provee un resumen estadsticos que permite ms exibilidad que el summarize.
Example :
*Tabulaciones y Tablas
//usaremos loa base de datos "auto_modicada.dta"
//para ilustrar estos comandos
use auto_modicada.dta,clear
*Comando tabulate
//Realicemos una tabla de un solo sentido para la
//variable foreign para aquellos autos que cuestan
//menos de 14000 libras.

38

tabulate foreign if price<14000


//Ahora queremos tabular la variable "foreign"
//generando variables dummy llamada "for"
tabulate foreign, gen(for)
br foreign for*
//Si tabulamos la variable categrica que creamos
//en base a mpg "cat_mpg" por el lugar de origen del
//auto "foreign"
by foreign: tab cat_mpg
//Creamos una tabulacin de doble sentido entre
//la variable "cat_mpg" y "foreign" contado por
//la y columna
tab foreign cat_mpg, row col
*Comando table
//generamos un tabla de doble entrada entre la variable
//foreign y cat_mpg
table cat_mpg foreign
//se puede ver que no se imprime los totales ya sea de
//forma vertical y horizontal a diferencia del comando
//tabulate.
//generamos un tabla de tres entrada que clasique por la
//variable foreign, las variables cat_mpg y rep78
table cat_mpg rep78 foreign
*Comando tabstat
//Generamos un tabla que nos represente las estadsticas
//descriptivas comunes de la siguiente lista de variables
//clasicado por la variable foreign
tabstat price mpg weight length,by(foreign) stat(mean ///
median min max sum sd va cv sk k)

39

Cap.3

Grcos en STATA

3.1 Introduccin a STATA GRAPH


STATA presenta una amplia variedad de gracos, la cual abarca guras como:
matrices de ploteos, histogramas, reas, lneas, caja y bigote, etc. Comenzaremos demostrando siete tipos de grcos:
:

histogram
graph twoway

Histogramas
Scatterplot, lneas, y otros entre dos variables.

graph matrix

Matrices de Scatterplots.

graph box

Grcas de caja y bigotes.

graph bar

Grcas de barras

graph dot

Grcas de puntos.

graph pie

Grcas de pastel o pie.

Para cada uno de estos grcos existen muchas opciones5 .

3.2 Tipos de Grcos


Los comandos del STATA GRAPH empiezan con la palabra graph (aunque
en algunos casos esto es opcional) seguido por la palabra que indica el tipo de
graco.

3.2.1 Histograma
La funcin de densidad de una variable puede ser estimada usando un histograma a travs del comando histogram. Para ilustrar la funcin de este
comando, utilizaremos la base states.dta, la cual contiene informacin sobre los
ambientes seleccionados y la educacin para 50 estados de USA ms el distrito
de Columbia (datos que provienen de League of Conservation Voters 1991, 1993;
World Resources Institute 1993).
La gura 3.1 muestra un histograma simple de college, la cantidad de estados
que se distribuyen dentro de un rango de porcentajes de la poblacin adulta que
cuenta con un grado superior. Esto se produce de la siguiente forma:
5 Para observa otras tipos de grcos y comandos relacionados a estos, se recomienda tipear
en la venta de comandos help graph_other.

40

Example :
*Histograma
use states.dta,clear
describe
*Realizamos el histograma para la variable college
histogram college, frequency title("Figura 3.1")

Frequency
10

15

20

Figura 3.1

10

15

20
25
% over 25 w/bachelor's degree +

30

Figura 3.1
La gura 3.1 presenta dos opciones: frequency (en vez de la densidad
que aparece por defecto) que se muestra en el eje vertical; y el title("Figura
3.1") que aparece sobre el grco. Este gura revela la simetra positiva de la
distribucin de college, con una moda por encima de 15 y un outlier alrededor
de los 35.
La gura 3.2 contiene una versin con mayores mejoras (basado en algunos
experimentos para encontrar los valores correctos):
1. El eje x est etiqueta desde 12 hasta 34, con incrementos de 2 unidades.
2. El eje y est etiqueta desde 0 hasta 12, con incrementos de 2 unidades.
3. Los marcadores sobre el eje y desde 0 hasta 13, con incrementos de 2
unidades.
4. La primera barra del histograma comienza en 12.
5. El ancho de cada barra (o bin) es 2.
41

Example :
histogram college, frequency title("Figura 3.2") ///
xlabel(12(2)34) ylabel(0(2)12) ytick(1(2)13) start(12) width(2)

Frequency
6
8

10

12

Figura 3.2

12

14

16

18
20
22
24
26
28
% over 25 w/bachelor's degree +

30

32

34

Figura 3.2
La gura 3.2 nos ayuda a describir la distribucin con mayor detalle. Por
ejemplo, podemos ver que en 13 estados los porcentajes de colegas con grado
superior se encuentran entre los valores de 16 y 18.
Otras tiles opciones son los siguientes:
bin
:
Muestra un histograma con # de bins (o barras). Podemos
especicar bin(#), como en la Figura 3.2 o start(#) con width(#),
pero no ambos.
percent
:
Muestra los porcentajes en el eje vertical. Otra posibilidades son las opciones fraction que muestra la fraccin de la data y
frequency especicado en la Figura 3.1, el histograma por default muestra la densidad (density) lo que quiere decir que las barras estn escaladas
de tal forma que el rea bajo la grca sume la unidad.
gap(#)
:
Indica el espacio entre las barras, el nmero "#" se especica entre 0<#<100.
addlabel
:
Etiqueta la parte superior de las barras del histograma
con la frecuencia de datos.
discrete
:
Especica que la data es discreta, requiriendo una barra
para cada valor de la variable.

42

norm
:
Sobrepone una curva normal sobre el histograma, basado
sobre la media muestral y desviacin estndar.
kdensity
:
histograma6 .

Sobrepone un estimador de densidad de kernel sobre el

p
El nmero de intervalos por default es min( N ; 10 ln N= ln 10). Con los
histogramas tambin podemos especicar nuestro propios ttulos en el eje de las
abscisas con xtitle() y en el eje de la ordenada con ytitle().
En la gura 3.3 ilustra un ejemplo con algunos otras opciones de comando
del histograma. Note el cambio de construccin de grcos desde la gura 3.1
hasta ms elaborada gura 3.3. Este es un patrn normal para la construccin
de grcos en STATA: iniciamos por lo ms simple, entonces experimentamos
la suma de opciones para obtener una gura que se muestre claramente.
Example :
histogram college, frequency title("Figura 3.3") ///
xlabel(12(2)34) ylabel(0(2)12) ytick(1(2)13) start(12) width(2) ///
addlabel norm gap(15)
Figura 3.3

10

12

13

Frequency
6
8

7
6

12

14

16

18
20
22
24
26
28
% over 25 w/bachelor's degree +

30

32

34

Figura 3.3
Supongamos que queremos saber como se distribuye college por region. La
opcin by() nos da un histograma de college para cada regin. La gura 3.4
muestra un ejemplo en la cual expresamos en porcentajes sobre el eje de la
ordenada y los datos agrupados en 8 bins.
6 Ver

help kdensity para ms detalle.

43

Example :
histogram college, by(region) percent bin(8) title("Figura 3.4")
Figura 3.4

West

N. East

Figura 3.4

Figura 3.4

South

Midwest

0
0

10 20 30 40

Percent

10 20 30 40

Figura 3.4

10

15

20

25

30

10

15

20

25

30

% over 25 w/bachelor's degree +


Graphs by Geographical region

Figura 3.4
La siguiente gura 3.5 contiene un grco similar con las 4 regiones, pero
esta vez incluye un quinto elemento que seala la distribucin para todas las
regiones combinadas.
Example :
histogram college,percent bin(8) title("Figura 3.5") by(region,total)

Figura 3.4

Figura 3.4

West

N. East

South

Figura 3.4

Figura 3.4

Midwest

Total

0
10 20 30 40

10

Percent

10 20 30 40

Figura 3.4

10

15

20

25

30

10

15

20

25

30

% over 25 w/bachelor's degree +


Graphs by Geographical region

Figura 3.5
44

15

20

25

30

3.2.2 Graph Twoway


3.2.2.1 Scatterplot
Los diagramas de dispersin de puntos (scatterplot) se accede a travs del comando graph twoway scatter, cuya sintaxis general es:
graph twoway scatter y x
donde y es la variable que se muestra en el eje vertical y x en el eje horizontal.
Por ejemplo, otra vez usando la base de datos states.dta, podemos plotear la
variable waste (desperdicios slidos per cpita) contra metro (porcentaje de la
poblacin en reas metropolitanas), cuyo resultado se muestra en la gura 3.6.
Cada punto de esta gura representa una de los 50 estados que presenta la data.
Example :

0.50

Per capita solid waste, tons


1.00

1.50

graph twoway scatter waste metro

20.0

40.0

60.0
80.0
Metropolitan area population, %

100.0

Figura 3.6
De la misma forma que en el histograma, podemos usar xlabel(), xtick(),
xtitle() para controlar las etiquetas de los ejes, los marcadores de los ejes, o
ttulos. El scatterplot tambin permite controlar las formas, colores, tamaos y
otros atributos. La gura 3.6 emplea marcadores por defecto, la cual son crculos slidos. El mismo efecto podramos obtener si incluimos la opcin msymbol(circle) o escribimos esta opcin de manera abreviada como msymbol(O) .
La siguiente tabla muestra las diversas formas de marcadores para la dispersin
de puntos.

45

msymbol()
circle
diamond
triangle
square
plus
x
smcircle
smdiamond
smsquare
smtriangle
smplus
smx
circle_hollow
diamond
triangle_hollow
square_hollow
smcircle_hollow
smdiamond_hollow
smsquare_hollow
smtriangle_hollow
point
none

Abreviacin
O
D
T
S
+
X
o
d
s
t
smplus
x
Oh
Dh
Th
Sh
oh
dh
sh
th
p
i

Descripcin
circulo slido
diamante slido
triangulo slido
cuadrado slido
signo "+"
letra "x"
pequeo crculo slido
pequeo diamante slido
pequeo cuadrado slido
pequeo diamante slido
pequeo signo "+"
pequea pequeo
circulo con vacio
diamante con vacio
triangulo con vacio
cuadrado con vacio
pequeo crculo con vacio
pequeo diamante con vacio
pequeo cuadrado con vacio
pequeo diamante con vacio
punto pequeo
invisible

La opcin mcolor() controla los colores de los marcadores7 . Por ejemplo podramos producir un scatterplot con grandes cuadrados morados: graph twoway
scatter waste metro, msymbol(S) mcolor(purple)
Una uso interesante de este tipo de grco es hacer que el tamao de los
simbolos sean proporcionales a una tercera variable. De este modo, los ploteos
se diferenciarn visualmente por medio de un ponderador "weight". Si modicamos el scatterplot entre la variable waste y metro, haciendo que el tamao de
los smbolos se pondere por la densidad poblacional de cada estado (pop), obtendremos la gura 3.7. Para esto usaremos el ponderador de frecuencia fweight[
] y la opcin de crculos vacios, msymbol(Oh)8 .
Example :
graph twoway scatter waste metro [weight=pop], msymbol(Oh)
7 Para

ver ms detalle de los distintos colores acceder a help mcolorstyle.


ponderador de frecuencia suele ser til en otros grcos, pero a la vez es un tpico
complejo, porque los ponderadores "weight" vienen de diferentes formas y tienen diferentes
signicados para diversos contextos. Para una informacin general de este tema en STATA,
tipear help weight.
8 El

46

1.50
Per capita solid waste, tons
1.00
0.50

20.0

40.0

60.0
80.0
Metropolitan area population, %

100.0

Figura 3.7
El ejemplo de la gura 3.8 incluye una regresin lineal simple derivado del comando twoway lt que ha sido aadido al graco 3.6 especicando el siguiente
smbolo ( jj ) .
Example :

0.50

1.00

1.50

graph twoway scatter waste metro, msymbol(S) mcolor(purple) ///


jj lt waste metro

20.0

40.0

60.0
80.0
Metropolitan area population, %

Per capita solid waste, tons

Figura 3.8
47

Fitted values

100.0

Los marcadores de un scatterplot pueden identicarse con etiquetas. Por


ejemplo, podemos desear observar los nombres de los estados en la gura 3.6,
dado que son 50 nombres de estados, puede causar mucha confusin y desorden, as que nos concentraremos en una regin tal como West que parece ms
prometedor. A travs del uso de una condicional if se produce los siguientes
resultados en la gura 3.9.
Example :

1.60

graph twoway scatter waste metro if region==1, mlabel(state) ///


msymbol(S) mcolor(purple) jj lt waste metro

1.20

1.40

California

Oregon Hawaii

1.00

Washington
New Mexico

Nevada
Arizona

Montana
Wyoming

Utah

Colorado

0.60

0.80

Alaska
Idaho

20.0

40.0

60.0
80.0
Metropolitan area population, %

Per capita solid waste, tons

100.0

Fitted values

Figura 3.9
La gura 3.10 muestra un scatterplot entre waste y metro para cada regin
de manera separada. La relacin entre estas dos variables aparecen pendientes
notables en la regin South y Midwest. La opcin xlabel() e ylabel() en este
ejemplo da las etiquetas para los ejes x e y de tres dgitos como mximo sin
decimales, hacindo fcil de leer para pequeos sub-ploteos.

Example :
graph twoway scatter waste metro, by(region) mlabel(state)///
xlabel(,format(%3.0f)) ylabel(,format(%3.0f))

48

West

N. East

New
York
Rhode
Island
Massachusetts

Hawaii
Oregon
Washington
Nevada
Arizona
Colorado
Utah

New Hampshire
Maine
Vermont

New Jersey
Connecticut
Pennsylvania

New Mexico
Alaska
Idaho
Montana
Wyoming

South

Midwest
Virginia

Missouri Ohio

Florida

Illinois
Michigan
South
Carolina
Delaware
Alabama
Texas Maryland
Tennessee
West Virginia
KentuckyOklahoma
North Carolina
Arkansas
Louisiana

Per capita solid waste, tons

California

Georgia

South Dakota
Kansas

Indiana
Minnesota

Iowa
Nebraska
North Dakota

Wisconsin

Mississippi

20

40

60

80

100 20

40

60

80

100

Metropolitan area population, %


Graphs by Geographical region

Figura 3.10
3.2.2.2 Multiples Scatterplots
El comando graph matrix nos muestra un til anlisis multivariado. Este
comando otorga una grca compacta de la relacin entre un nmero de variables por pareja, permitindole al analista observar los signos de no linealidad,
outliers o cluester que puedan afectar al modelamiento estadstico. Este tipo
de grco es til si se quiere observar la inuencia de una lista de variables
explicativas a una variable dependiente. La gura 3.11 muestra una matriz de
scatterplot que implica la relacin entre cuatro variables de la data states.dta.
Example :
*Multiples Scatterplots
graph matrix miles metro income waste , half msymbol(Oh)

49

Per
capita
miles
driven/year
100.0

50.0

Metropolitan
area
population,
%

0.0
50000

Median
household
income

40000
30000
20000
1.50

Per
capita
solid
waste,
tons

1.00

0.50
6000 8000 10000 120000.0

50.0

100.0
20000 30000 40000 50000

Figura 3.11
La opcin half especicado en la gura 3.11 hace que se muestre solo la
parte triangular inferior de la matriz ya que la parte superior es simtrica y
redundante.

3.2.2.3 Ploteos con Lineas (Line Plot)


Mecnicamente, los ploteos con lneas son scatterplots en la cual los puntos
son conectados por segmentos de rectas. El ploteos con lneas tiende a tener
diferentes usos, como por ejemplo permite observar el cambio de una variable a
travs del tiempo. La base de datos cod.dta contiene datos de serie de tiempo
reejando la historia desagradable de la pesca en Newfoundlands Northern
Code. Esta pesca ha sido uno de los ms ricos del mundo, pero colaps en
1992 debido primeramente a la sobreexplotacin.
Un simple ploteo muestra que los canadienses y las islas pueden ser construidos sealando una graca lineal de ambas variables a travs del tiempo (year ).
La gura 3.12 muestra el gran pico de sobrepesca internacional a nes de los
aos 1960s, seguido por una dcada de presin en la pesca canadiense en 1980,
conduciendo en 1992 el colapsamiento del Northern Cod.
Example :
*Line Plot
graph twoway line cod canada year

50

800
600
400
200
0

1960

1970

1980
Year

Total landings, 1000t

1990

2000

Canadian landings, 1000t

Figura 3.12
En la gura 3.12, STATA automticamente elige una lnea slida azul para la
primera variable, code, y una lnea slida roja para la segunda variable, canada.
Adems de una legenda en la parte inferior que muestra el signicado de las
variables. Podemos mejorar este grco a travs de un arreglo en la legenda y
suprimiendo el ttulo redundante en el eje x, como se ilustra en la gura 3.13.
Example :

800

twoway line cod canada year, legend(label(1 "Todas las Naciones") ///
label (2 "Canada") position(2) ring(0) rows(2)) xtitle("")

200

400

600

Todas las Naciones


Canada

1960

1970

1980
Year

Figura 3.13
51

1990

2000

Se tiene sub-opciones para la opcin legend() la cual se colocan dentro de


los parntesis y se sealan como sigue:
label (1 "Todas las Naciones")
label (2 "Canada")
position(2)
ring(0)
rows(2)

La etiqueta para la primera variable del eje y


La etiqueta para la segunda variable del eje y
Establecer la legenda a las 2 de la hora del
reloj (superior derecha)
Establecer la legenda entre los espacio del ploteo
Dice que la legenda tenga dos las

La opcin legend() trabaja similarmente para otros estilos de grcos que


llevan legenda9 .
La gura 3.12 y 3.13 conecta de una manera simple cada punto de la data
con un segmento de recta. Otras estilos de conexiones son posibles, usando
la opcin connect(). Por ejemplo, connect(stairstep) o equivalentemente
connect(J) generara puntos para ser conectados en forma de escalera. La
gura 3.14 ilustra el ploteo en forma de escalera para la variable TAC (pesca
total disponible establecido por el gobierno).

Example :

Total Allowable Catch, 1000t


200
400
600

800

graph twoway line TAC year, connect(stairstep)

1960

1970

1980
Year

1990

2000

Figura 3.14
9 Puede acceder a la ayuda del STATA a travs de help legend_option para ver una lista
de sub-opciones disponibles.

52

Otras formas de conexin se muestran en la siguiente lista. Por defecto, el


segmento de lnea recta corresponde a connect(direct) o connect(l)10 .
connect()
none
direct
ascending
stairstep
stepstairs

Abreviacin
i
l (letra ele)
L
J

Descripcin
no conecta puntos
conecta con lneas rectas
es similar a direct solo si x(i + 1) > x(i)
recta constante, luego vertical
vertical, luego se mantiene constante

La gura 3.15 repite este ploteo escalonado de TAC, pero con algunas modicaciones de las etiquetas de los ejes y ttulos. La opcin xtitle("") no presenta
ningn ttulo en el eje x. Aadimos marcadores en un intervalo de cada dos
aos en el eje x, etiquetamos el rango de valores en el eje y con intervalos de
100 unidades, adems incluimos lneas verticales de fondo en intervalos de 100
unidades.
Example :
graph twoway line TAC year, connect(stairstep) xtitle("") ///
xtick(1960 (2) 2000) ytitle("Miles de Toneladas") ///
ylabel(0 (100) 800, angle(horizontal)) clpattern(dash)
800
700

Miles de Toneladas

600
500
400
300
200
100
0
1960

1970

1980

1990

2000

Figura 3.15
Otro modo de especicar el tipo de lnea que se desea usar es a travs de la
opcin clpattern(), que nos permite elegir un patrn de lnea y se muestra en
la siguiente relacin:
1 0 Para

ms detalle, ver help connectstyle.

53

clpattern()
solid
dash
dot
dot_dash
shortdash_dot
longdash
longdash_dot
blank
formula

Descripcin
lnea slida
guiones
puntos
puntos y guiones
guiones pequeos con puntos
guiones grandes
guiones grandes con puntos
linea invisible
por ejemplo: clpattern(-.); clpattern(-..)

Para la siguiente gura 3.16 usamos tres variables discutidos en esta seccin
para crear una grca singular que muestre la tragedia del Northern Cod. Note
que las opciones connect(), clpattern() y legend() son utilizados en este ejemplo.
Example :
graph twoway line cod canada TAC year, ///
connect(line line stairstep) clpattern(solid longdash dash) ///
xtitle("") xtick(1960 (2) 2000) ytitle("Miles de Toneladas") ///
ylabel(0 (100) 800, angle(horizontal)) ///
legend( label (1 "Todas las Naciones") label (2 "Canada") ///
label(3 "TAC") position(2) ring(0) rows(3))
800

Todas las Naciones


Canada
TAC

700

Miles de Toneladas

600
500
400
300
200
100
0
1960

1970

1980

1990

2000

Figura 3.16
3.2.2.4 Ploteo de Lneas Conectadas (Connected-Line)
En el ploteo de lneas de la subseccin anterior, los puntos de los datos son
invisibles y vemos solo la conexin de las lneas. El comando graph twoway
54

connected crea ploteo una conexin de puntos en la cual los datos son marcados
por smbolos del scatterplot. Las opciones de los smbolos de marcadores son
los mismos para scatterplot y ploteo con lneas. La gura 3.17 nos muestra un
ejemplo de un ploteo de lneas conectadas a travs del tiempo de la variable de
la biomasa de bacalao (bio) de la data cod.dta.
Example :
*Grco de Lneas Conectadas
.
use cod.dta

500

Estimated biomass, 1000t


1000
1500
2000

2500

graph twoway connected bio year

1960

1970

1980
Year

1990

2000

Figura 3.17
La base de datos solamente contiene valores desde 1978 hasta 1997, generando
muchos espacios vacios en la gura 3.17. La condicional if nos permite restringir
el rango de los aos. La gura 3.18 realiza esta operacin, adems de acomodar
la imagen mostrando un control de los marcadores de smbolos, patrn de lneas,
ejes y legenda. Vemos que las biomasas comienzan su gran cada a nes de los
1980, aos anteriores las crisis eran reconocidos.
Example :
graph twoway connected bio cod year if year >1977 & year<1999, ///
msymbol(T oh) clpattern(dash solid) xlabel(1978(2)1996) ///
xtick(1979(2)1997) ytitle("Miles de Tonelada") xtitle("") ///
55

ylabel(0(500)2500, angle(horizontal)) ///


legend(label(1 "Biomasas Estimadas") label(2 "Total de Desembarco") ///
position(2) rows(2) ring(0))

Biomasas Estimadas
Total de Desembarco

2500

Miles de Tonelada

2000

1500

1000

500

0
1978

1980

1982

1984

1986

1988

1990

1992

1994

1996

Figura 3.18
3.2.2.5 Otros Tipos de Scatter Plot
Adems de los ploteos con lneas y scatterplot, el comando graph twoway presenta una amplia variedad de otros tipos11 . Una observacin que se puede hacer
es que existen comandos como graph twoway bar y graph twoway dot que
son muy distintos a los tipos de grcos de barras (bar) y puntos (dot) respectivamente. Las versiones del twoway provee varios mtodos para plotear
una variables y contra otra variable x; adems tienen la ventaja de sobreponer
otros grcos del twoway para formar grcos ms complejos. Por otro lado, las
versiones que no son del twoway proveen modos de ploteos usando resumenes
estadsticos (tal como media o mediana) de las variables y contra las categoras
de otras variables x.
Mucho de estos tipos de ploteos son tiles en la composicin del grco
nal, que se construye por sobreposicin de dos o ms ploteos simples. En el
grco 3.19 muestra un ploteo de reas de la desembarcacin de bacalao del
Newfoundland.
Example :
graph twoway area cod canada year, ytitle("")
1 1 Para ver toda la lista de posibles tipos de grcos con el comando graph twoway tipear
help twoway.

56

800
600
400
200
0

1960

1970

1980
Year

Total landings, 1000t

1990

2000

Canadian landings, 1000t

Figura 3.19
El color de las reas pueden ser controlados por la opcin bcolor12 . Por
ejemplo, el gris oscuro (gs0) es actualmente el color negro. Por ejemplo, la
escala en grises se encuentra entre el valor 0 y 16.El color gris ms ligero (gs16)
es blanco. En la gura 3.20 muestra un ligero gris para este grco.
Example :

200

400

600

800

graph twoway area cod canada year, ytitle("") bcolor(gs12 gs16)

1960

1970

1980
Year

Total landings, 1000t

1990
Canadian landings, 1000t

Figura 3.20
1 2 Tipear

help colorstyle para ver la lista de colores.

57

2000

Inusualmente las condiciones de frio en el ocano y atmsfera causan un rol


secundario en el desastre de la pesca en Newfoundland. Por ejemplo, la especie
de pescado clave en los vecinos de Gulf of St. Lawrence declinaron durante este
periodo la data gulf.dta describe el desarrollo y las desembarcaciones de bacalao
en Newfoundland, donde la mxima cobertura del hielo abarca los 173,017 km2
durante estos aos.
La gura 3.21 usa esta media (173 mil) como la base de un ploteo de lneas
punteadas (spike), en la cual sobresalen lneas hacia arriba y hacia abajo a partir
de esta media referencial. La opcin yline(173) traza una lnea horizontal en
173.
Example :
use gulf.dta,clear
sum maxarea
graph twoway spike maxarea winter if winter>1963, ///
base(173) yline(173) ylabel(40(20)220, angle(horizontal)) ///
xlabel(1965(5)2000)

220

Maximum ice area, 1000 km^2

200
180
160
140
120
100
80
60
40
1965

1970

1975

1980
1985
Winter

1990

1995

2000

Figura 3.21
El formato base() de la gura 3.21 enfatiza la sucesin de inviernos inesperados (valores que sobrepasan el promedio) durante los aos de 1980 hasta 1990,
donde ocurre la crisis pesquera en Newfoundland.
Una diferente vista de la misma data se muestra en la gura 3.22, donde se
emplea la regresin mnima para suavizar la serie de tiempo con graph twoway
58

lowess. La opcin de ancho de banda, bwidth(.4), especica una curva basada


en el suavizamiento de los datos que son derivamos de la regresin ponderador
entre una banda que cubre el 40% de la muestra. El ancho de la banda pequeo
se tal como bwidth(.2) , o 20% de la data, debera darnos un mayor ajuste.
Una curva suavizada que sea ms semejante a la data original. Altos anchos de
bandas como bwidth(.8), por defecto tendra un suavizamiento ms radical.
Example :
graph twoway lowess maxarea winter if winter>1963, ///
bwidth(.4) base(173) yline(173) ylabel(40(20)220, angle(horizontal)) ///
xlabel(1965(5)2000)
220
200

lowess maxarea winter

180
160
140
120
100
80
60
40
1965

1970

1975

1980
1985
Winter

1990

1995

2000

Figura 3.22
El ploteo de rangos conecta valores altos y bajos de y para cada valor de
x, usando barras, pas, o reas sombreadas. Los precios de mercados diarios
de los stocks son gracados de esta manera. La gura 3.23 muestra un ploteo
de rango con pas usando la cubertura de hielo mximo y mnimo de la data
grulf.dta.
Example :
graph twoway rcap minarea maxarea winter if winter>1963, ///
ylabel(40(20)220, angle(horizontal)) ytitle("Area con Hielo,1000km^2") ///
xlabel(1965(5)2000)

59

220
200

Area con Hielo, 1000 km^2

180
160
140
120
100
80
60
40

1965

1970

1975

1980
1985
Winter

1990

1995

2000

Figura 3.23

3.2.3 Grco de Caja y Bigote (Box Plot)


La grca de caja y bigote brinda informacin acerca del centro, amplitud,
simetra y outliers con solo un vistazo. Para obtener este grco, se debe tipear
el comando de la siguiente forma:
graph box x
Si diversas variables tienen escalas similares, podemos comparar sus distribucin con la siguiente sintaxis:
graph box x y z
La gura 3.24 compara la distribucin de college segn las cuatro regiones
en USA que proviene de la base de datos states.dta.
Example :
*Graca de Caja y Bigote
use states.dta,clear
graph box college, over(region) yline(19.1)

60

30
% over 25 w/bachelor's degree +
15
20
25
10

West

N. East

South

Midwest

Figura 3.24
La mediana de la proporcin de adultos con grado superior tiende a ser
mayor en Northeast, y menor en South. Por otro lado los estados del sur presentan mayor variabilidad. La mediana por regiones (la lnea entre las cajas) en
la gura 3.24. puede ser comparado con la mediana considerando todos los estados indicado por la opcin yline(19.1). Esta mediana se obtiene escribiendo:
summarize colle if region<. ,detail.
Las cajas en estos grcos se extienden desde el primer hasta el tercer cuartil, una distancia denominada rango intercuartil (IQR). Esta adems contiene
aproximadamente la mitad, el 50 %, de la data. Los outliers, denidos como
observaciones mayores a 1.5 IQR del primer o tercer cuartil, la cual se plotean
separadamente de la caja. La caja y bogote en STATA dene los cuartiles de la
misma manera que el comando summarize, detail.
Numerosas opciones controlan la apariencia, forma y detalles de las cajas en
este diagrama13 . La gura 3.25 demuestra alguna de estas opciones, adems del
arreglo horizontal de graph_box, usando la energa per cpita mostrado en la
base states.dta. La opcin over(region,sort(1)) hacen que las cajas se ordenan
de forma ascendente acorde a la primera variable (en este caso ordena segn sus
medianas y la nica variable que existe). La opcin intensity(30) controla la
intensidad de la sombra de las cajas, establecindole algo menos oscuro que el
default (ver gura 3.24.). La lnea vertical marca la mediana total (320), la cual
se crea con la opcin yline(), en vez de xline.
1 3 Ver

help graph_box.

61

Example :
graph hbox energy, over(region,sort(1)) yline(320) intensity(30)

N. East

Midwest

West

South

200

400
600
800
Per capita energy consumed, Btu

1,000

Figura 3.25
La grca de caja y bigote para la energa en la gura 3.25 aclara no solo
la diferencia entre las medianas, sino tambin la presencia de outliers, principalmente son cuatro altos consumos de energa entre los estados de West y
South.

3.2.4 Grco de Pastel (Pie)


Este estilo es muy popular en las presentaciones de gracas, siempre y cuando
tengan pocos valores para trabajar. El comando bsico del graco de pie en el
STATA tiene la forma:
graph pie x y w z
donde x, y, w, z son variables que miden cantidades de alguna cosa en
las mismas unidades (por ejemplo, pueden estar medidos en dinero, horas o
personas).
La base de datos Akethnic.dta, trata sobre la composicin tnica de la
poblacin de Alaska. La poblacin indgena de Alaska se dividen en tres grupos
culturales-lingusticos amplios: Aleun; Indian (incluyen Athabaska, Tinglit y
Haida) y Eskimo (Yupik y Inupiat). Las variables aleut, indian, eskimo, nonnativ son grupos de poblaciones, que se tomaron del censo de 1990 en USA.
Esta data contiene solamente tres observaciones, representando tres tipos de
62

comunidades: ciudades de 10 000 personas o ms; ciudades de 1 000 a 10 000;


y villas con menos de 1 000 personas.
La mayora de los estados son no nativos (nonnativ ), donde se puede ver
claramente en la grca del pastel de la Figura 3.26. La opcin pie(3,explode)
provoca el llamado de la tercera variable, eskimo, para ser "explotado" al ponerle nfasis al grco. La cuarta variable nombrada, nonnativ, es sombreado
con un ligero color gris, pie(4,color(gs13)), para compararlos con los grupos
nativos ms pequeos (es importante mencionar que existen otros colores que
se pueden utilizar como color(blue) o color(chranberry)14 . La opcin plabel(3 percent, gap(20)) causa una etiqueta de porcentaje que se seala en
el pedazo (slide) correspondiente a la tercera variable, eskimo, con una brecha
(gap) de 20 unidades separados del centro. Podemos ver que cerca del 8% de la
poblacin de Alaska es Eskimo (Yupik y Inupiat). La opcin legend seala las
cuatros variables localizado en la posicin de las 11 en punto del reloj.
Example :
use akethnic.dta,clear
graph pie aleut indian eskimo nonnativ , pie(3, explode) ///
pie(4, color(gs13)) plabel(3 percent , gap(20)) ///
legend( position(11) rows(4) ring(0))

Aleuts
Indians
Eskimos
Non-Natives

8.072%

Figura 3.26
Los no nativos son el grupo dominante en la gura 3.26, pero si mostramos el
pastel separado por cada tipo de comunidad aadindole un by(comtype) como
1 4 Tipear

help colorstyle para observar la lista de colores.

63

opcin, emerge nuevos detalles mostrados en la gura 3.27. La opcin angle0()


especica el ngulo del primer slide del pie. Estableciendo este primer slide
un ngulo en cero (horizontal), orienta los slides de tal forma que las etiquetas
son ms fciles de leer. La gura muestra que mientras los nativos son sola
la pequea fraccin de la poblacin en la ciudad de Alaska, ellos constituyen
la mayora entre aquellos que viven en las villas. En particular, los Eskimos
conforman una gran fraccin de los que viven en las villas, el 35% en total. Esto
hace que las villas en Alaska tengan una caracterstica distinta a comparacin
de la ciudad.
Example :
graph pie aleut indian eskimo nonnativ , pie(3, explode) ///
pie(4, color(gs13)) plabel(3 percent , gap(20)) ///
legend( position(11) rows(4) ring(0)) by(comtype) angle0(0)

villages

towns

8.141%

34.67%

cities

2.332%

Aleuts

Indians

Eskimos

Non-Natives

Graphs by Community type (size)

Figura 3.27

3.2.5 Grco de Barras (Bar)


El grco de barras provee una simple y verstil exhibicin conjunto de resmenes
estadsticos como media, mediana, suma o conteo. Para obtener barras verticales mostrando la media de la variable y frente a las categoras de x, por
ejemplo, tipeamos:
graph bar (mean) y, over(x)

64

Para barras horizontales mostrando la media de y frente a las categoras de


x1 , por cada una de las categoras de x2 , tipeamos:
graph hbar (mean) y, over(x 1 ) over(x 2 )
Este tipo de grco puede calcular los siguientes estadsticos:
mean
estadstico.

Media, por default se calcula si no se especica el

sd

Desviacin estndar.

sum

Suma.

rawsum
opcin.

Suma ignorando los ponderados especicados como

count
:
los missing values.

Cuenta el nmero de observaciones sin considerar

max

Mximo

min

Mnimo

median

Mediana

p1

Primer cuartil

p2

Segundo cuartil (y as hasta p99)

iqr

Rangos intercuartiles.

La base de datos statehealth.dta contiene datos sobre los estados de USA,


combinando medidas socio econmicas desde el Census de 1990 con diferentes
indicadores de riesgo a la salud de los Centers for Disease Control (2003), promediados entre los aos 1994-1998.
La gura 3.28 indica el porcentaje de la mediana de la poblacin inactiva en
tiempo de ocio (inactive), para cuatro regiones geogrcos (region). vemos una
diferencia regional: tasas de inactividad son altas en el South (36%), y menores
en el West (21%). Note que el eje vertical ha sido automticamente etiquetado
como "p50 of inactive", que signica el 50th percentil o mediana. La opcin
blabel(bar) etiqueta la parte superior de la barra con el valor de las medianas
(20.9, etc..). bar(1,bcolor(gs10)) especica que el color de las barras para
la primera variable mencionada (en este caso solo mencionamos a la variable
inactive) debera ser mostrado con un color gris ligero.
Example :
*Grco en barras
65

40

use statehealth.dta,clear
graph bar (median) inactive, over(region) blabel(bar) ///
bar(1,bcolor(gs10))

29.1

28.3

20.9

10

p 50 of inactive
20

30

36.05

West

N. East

South

Midwest

Figura 3.28
La gura 3.29 elabora la anterior idea aadiendo otra variable, overweight, y
se colorea su barra de gris oscuro. La etiqueta de la barra son size(medium),
hacindoles ms grande que el tamao por default (size(small)). Otras posibilidades para size() son las subopciones tiny, medsmall, medlarge o large 15 .
La gura 3.29 muestra las diferencias regionales con respecto al sobrepeso son
menos pronunciados que la inactividad, adems las medianas de ambas variables
son mayores en el South y Midwest.

Example :
graph bar (median) inactive overweight, over(region) ///
blabel(bar, size(medium)) bar(1,bcolor(gs10)) bar(2,bcolor(gs7))
1 5 Puedes

ver una lista ms detallada con el comando help textsizestyle.

66

40

36.05

30

31.3
27.6

28.3

31.2
29.1

27.1

10

20

20.9

West

N. East

South

p 50 of inactive

Midwest

p 50 of overweight

Figura 3.29
Los indicadores de riesgo en statehealth.dta incluye fatalidades por vehculos
a motor por 100 000 habitantes (motor ). La gura 3.30 muestra subgrupos
de estados con bajos y altos ingresos (estados que tienen ingresos menores y
mayores a la media de los ingresos del hogar), revelando una impresionante
correlacin con la riqueza. Entre cada uno de las regiones, la tasa de fatalidad
son ms altos en el South y menores en el Northeast. El orden de las dos
opciones over() controlan el orden en la organizacin del grco. Para este
ejemplo utilizamos las barras horizontales (hbar), donde las opciones ytitle() y
yline() se reeren al eje horizontal. En este caso, colocamos una lnea horizontal
que indica el valor de la mediana total de 17.2, yline(17.2), y ser mostrado
de forma vertical.
Example :
graph hbar (mean) motor, over(income2) over(region) yline(17.2) ///
ytitle("Promedio de vehculos a motor relacionado a Fatalidades/100000")

67

Low income

West
High income

Low income

N. East
High income

Low income

South
High income

Low income

Midwest
High income
0
5
10
15
20
25
Promedio de vehculos a motor relacionado a Fatalidades/100000

Figura 3.30
Las barras tambin pueden estar montadas entre s, como se muestra en la
gura 3.31. Este ploteo, basado sobre la data de etnicidad en Alaska, emplea
todas las opciones por default para gracar la composicin tnica por tipo de
comunidad (village, town o city).
Example :
use akethnic.dta,clear

100000

200000

300000

400000

graph bar (sum) nonnativ aleut indian eskimo, over(comtype) stack

villages

towns
sum of nonnativ
sum of indian

Figura 3.31
68

cities
sum of aleut
sum of eskimo

La gura 3.32 regraca este ltimo ploteo con una mejor leyenda y etiqueta
los ejes. La opcin over() ahora incluye subopciones que reetiquetan los tipos
de comunidad en el eje de la abscisa para dar mayor informacin. La opcin
legenda especica cuatro las en el mismo orden vertical que se muestra en las
barras. Tambin se mejora la etiqueta de las legendas con ytitle y ylabel como
opciones del formato del eje vertical.
Example :

Eskimo
Indian
Aleut
Nonnative

100000

Population
200000

300000

graph bar (sum) nonnativ aleut indian eskimo, ///


over(comtype, relabel(1 "Village <1000" ///
2 "Towns 1000-10000" 3 "Cities >10000")) ///
legend( row(4) order(4 3 2 1) position(11) ring(0) ///
label(1 "Nonnative") label(2 "Aleut") ///
label(3 "Indian") label(4 "Eskimo")) stick ///
ytitle("Population") ylabel(0 (100000) 300000) ///
ytick(50000 (100000) 350000)

Village <1000

Towns 1000-10000

Cities >10000

Figura 3.32
Mientras el pie de la gura 3.31 muestra el tamao relativo (porcentajes)
de los grupos tnicos por cada tipo de comunidad, esta ltima barra muestra
sus tamaos absolutos. Consecuentemente, esta gura te dice algo ms que el
anterior: la mayora de la poblacin de Eskimos en Alaska viven en villas.

69

3.2.6 Grco de Puntos (Dot Plot)


Los ploteos con puntos son igual de tiles que las grcas con barras: comparando visualmente resumenes estadsticos de una o ms variables. Las opciones
que usa el STATA para ambos grcos son ampliamente similares, incluyendo
la eleccin de los estadsticos. Para ver este diagrama comparando las medianas
de las variables x; y; w y z, debemos tipear:
graph dot (median) x y w z
Y para ver la comparacin de promedios de la variable y segn las categoras
de x, escribimos:
graph dot (mean) y , over(x)
La gura 3.33 muestra un ploteo de puntos de la tasa de fuma entre hombre
y mujeres por regiones, usando la data stateheath.dta. La opcin over() incluye
buena subopcin, sort(smokeM), la cual ordena la media de smokeM para
cada una de las regiones, esto es desde la ms baja hasta la ms alta tasa de
fumar. Tambin podemos especicar un triangulo slido como marcador de
smbolo para smokeM y crculos con un centro vacio para smokeF.
Example :
*Dot Plot
graph dot (mean) smokeM smokeF, over(region, sort(somkeM)) ///
marker(1, msymbol(T)) marker(2, msymbol(Oh))

West

N. East

South

Midwest

10

20

mean of smokeM

Figura 3.33
70

mean of smokeF

30

Adems, la gura 3.33 calcula solo 8 promedios, esto hace que sea fcil las
comparaciones. Vemos que las tasas de fumar son ms altas en las mujeres, y
con respecto a ambos sexos la tasa ms alta se encuentra en South y Midwest,
y esas variaciones son sustancialmente muy altos en el caso de las mujeres.
La grca en barras podra darnos la misma informacin, pero una ventaja
de estos grcos es la formar de compactar los datos. Los ploteos de puntos
(particularmente cuando se quiere ordenar por estadsticos de inters) es fcil
de entender incluso con varias las.

3.3 Aadiendo Textos a los Grcos


Los ttulos, las nombres de grcos y notas pueden ser aadidos al grco para
que sea ms explicativo. Los ttulos y subttulos aparecen encimas del rea
del ploteo; las notas (la cual puede documentar la fuente de los datos) y las
caption aparecen en la parte inferior16 . La gura 3.42 muestra el uso de estas
opciones en un scatterplot sobre los fumadores y los graduados universitarios
en los estados de USA, usando la data statehealth.dta. La gura 3.42 tambin
incluye ttulos para ambos lados (derecha e izquierda) del eje y;yaxis(1 2) y la
parte superior en inferior del eje x, xaxis(1 2). Luego las opciones xtitle y ytitle
se reeren al segundo eje especcamente, al incluirse la subopcin axis(2).
Example :
*Texto en Grcos
use statehealth.dta,clear
graph twoway scatter smokeT college, yaxis(1 2) xaxis(1 2) ///
title("Es es un Ttulo") subtitle("Este es un Subttulo") ///
caption("Este es un caption") note("Esta es una Nota") ///
ytitle("Este es el Porcentaje de adultos fumadores") ///
ytitle("Este es el Eje Y 2", axis(2)) ///
xtitle("Porcentaje de adultos con Grado Superior") ///
xtitle("Este es el Eje X 2", axis(2))
1 6 Tipear help title_options para ms informacin acerca de la especicacin de los ttulos
o help text_box para detalles concernientes a sus contenidos.

71

Es es un Ttulo
Este es el Eje X 2
20
25

15

30

35

10

15
20
25
30
Porcentaje de adultos con Grado Superior

35

20
25
30
Este es el Eje Y 2

35

10

15

Este es el Porcentaje de adultos fumadores


15
20
25
30
35

Este es un Subttulo

Esta es una Nota

Este es un caption

Figura 3.34
El ttulo aade el texto fuera del espacio de ploteo. Tambin podemos aadir
cajas de texto en coordinadas especcas en el espacio de ploteo. Diversos outliers se observan en este ploteo, la cual bajo inspeccin estos outliers resultan
ser Washington DC (el valor ms alto de college), Utah (valor ms pequeo de
smokeT ) y Nevada (el valor ms alto de smokeT en la parte superior izquierda).
Los cuadros de texto son de instrumentos para identicar dichas observaciones
en nuestro grco, como se seala en la gura 3.43. La opcin text(15.5 22.5
"Utah") establece la palabra Utah en la posicin x=15.5 e y=22.5 del scatterplot, directamente por encima del punto que indica el estado de Utah. De
una forma similar podemos establecer la palabra "Nevada"en x=33.5 e y=15 y
ubicarlo en un cuadro pequeo (con pequeos mrgenes17 ) alrededor del nombre
del estado. Las tres lneas de textos justicados hacia la izquierda son colocados al lado de Washignton DC (cada lnea se especica separadamente entre
comillas). Algunos cuadros de texto o ttulos pueden tener mltiples lneas,
as que podemos escribir una parte del ttulo en lneas diferentes escribindolo
entre comillas diferentes, para luego denir el tipo de justicacin. El cuadro
"nevada" utiliza un formato de fondo por default, mientras que el cuadro de
"Washigton DC" elegimos un color de fondo blanco18 .
Example :
graph twoway scatter smokeT college, yaxis(1 2) xaxis(1 2) ///
1 7 Ver
1 8 Ver

help marginstyle.
help textbox_option y help colorstyle.

72

title("Es es un Ttulo") subtitle("Este es un Subttulo") ///


caption("Este es un caption") note("Esta es una Nota") ///
ytitle("Este es el Porcentaje de adultos fumadores") ///
ytitle("Este es el Eje Y 2", axis(2)) ///
xtitle("Porcentaje de adultos con Grado Superior") ///
xtitle("Este es el Eje X 2", axis(2)) ///
text(15.5 22.5 "Utah") ///
text(33.5 15 "Nevada", box margin(small)) ///
text(23.5 32 "Washington DC" "no es actualmente" "un estado", ///
box justicacion(left) box margin(small) bfcolor(white))

Es es un Ttulo
15

Este es el Eje X 2
20
25

30

35
35

10

Washington DC
no es actualmente
un estado

Utah
10

15
20
25
30
Porcentaje de adultos con Grado Superior

20
25
30
Este es el Eje Y 2

Nevada

15

Este es el Porcentaje de adultos fumadores


15
20
25
30
35

Este es un Subttulo

35

Esta es una Nota

Este es un caption

Figura 3.35

3.4 Mltiples Ploteos


Dos o ms gracos de la familia graph twoway pueden ser sobrepuestos en
un nico grco. La familia twoway incluye diversos modelos de ploteos tales
como lt (recta de regresin lineal), qt (curva de regresin cuadrtica) y ms.
Por ello, tales ploteos brindan informacin al mnimo. Por ejemplo, la gura
3.44 describe la recta de regresin lineal, teniendo bandas al 95% de nivel de
conanza para la media condicional, de la regresin que surge entre smokeT
sobre college (del statehealth.dta).
Example :
*Ploteos Multiples

73

use statehealth.dta,clear

15

20

25

30

graph twoway ltci smokeT college

10

15

20
25
% adults college degree, 1990
95% CI

30

35

Fitted values

Figura 3.36
Un grco con mayor informacin cuando sobreponemos un scatterplot sobre
la recta de regresin lineal, se puede ver en la gura 3.45. Para hacer esto, damos
dos distintas indicaciones de comandos de grcos, separado por el "jj" como se
mencion anteriormente.
Example :

15

20

25

30

35

graph twoway ltci smokeT college jj scatter smokeT college

10

15

20
25
% adults college degree, 1990
95% CI
% adults smoking

Fitted values

Figura 3.37
74

30

35

El segundo ploteo (scatterplot) se coloca encima del primer ploteo en la gura


3.45. Este orden tiene consecuencia para el estilo de lnea usado por defecto
(solid, dashed,etc) y tambin para el marcado de smbolos (square, circle,etc)
usado por cada subploteo. Los ms importante es tratar que los ploteos sean
los ms visibles posibles.
La gura 3.46 desarrolla la idea anterior, mejorando la imagen usando las
opciones de etiquetas de ejes y legenda. Por que dichas opciones se aplican al
grco como un todo y no por separado, estas opciones son establecidas despus
del segundo separador jj, seguido por una coma. La mayora de estas opciones
se asemeja a los ejemplos realizados anteriormente. La opcin order(2 1) en
este caso hace una nueva funcin: omite una de los tres item de la legenda,
tal que solo dos de ellos (2 de la regresin lineal, seguido por 1 del intervalo
de conanza) aparecezcan en la gura. Comparando esta legenda con la gura
3.45 vemos la diferencia. Aunque listemos solo dos item en la legenda, aun es
necesario especicar tres las en el formato de la legenda (rows(3)) como si
cada uno de los items estan retenidos.
Example :
graph twoway ltci smokeT college jj scatter smokeT college ///
jj , xlabel(12 (2) 34) ylabel(14 (3) 32, angle(horizontal)) ///
xtitle("Porcentajes de Adultos con Grados Superior") ///
ytitle("Porcentaje de Adultos que fuman") ///
note("Datos del CDC andn US Census") ///
legend(order(2 1) label(1 "95% c.i") label(2 "Regresin Lineal") ///
rows(3) position(1) ring(0)

Porcentaje de Adultos que fuman

32

Regresin Lineal
95% c.i

29

26

23

20

17

14
12

14

16
18
20
22
24
26
28
30
Porcentajes de Adultos con Grados Superior

Datos del CDC andn US Census

Figura 3.38
75

32

34

Ambos scatterplot (ltci y scatter ) en la gura 3.46 presentan la misma escala de los ejes x e y, pero cuando ambas variables de inters tienen distintas
escalas, nosotros necesitaramos escalas independientes. La gura 3.47 ilustra
este caso juntando dos ploteos con lneas basado sobre la data del Gulf of St.
Lawrence, gulf.dta. Estas guras combinan series de tiempo de los promedios
mnimos de temperatura para el agua en Gulf (cil ), en grados celsius, y la mxima rea cubierta de hielo (maxarea), en miles de kilmetros cuadrados. El
ploteo de line hace uso de la opcin yaxis(1), lo cual por defecto es el lado
izquierdo. El ploteo de la mxima rea usa el yaxis(2), la cual por defecto
es el lado derecho. Los diversos opciones de ylabel, ytitle, yline e yscale
se incluyen con la subopcin axis(1) o axis(2), declarando cual de los ejes
y se reeren. Espacios extras entre las comillas para ytitle provee una rpida forma de colocar las palabras de esos ttulos donde nosotros deseamos. El
cuadro de texto contiene ""Decada y Colapso de los pescadores de Northern
Gulf" especicando un margen de tamao medio alrededor del texto. La opcin
yscale(range()) da a ambos ejes un rango ancho para los datos, los valores especicados se eligieron despus de experimentar y encontrar la mejor separacin
vertical entre ambas series.
Example :
use gulf.dta, clear
graph twoway line cil winter, ///
yaxis(1) yscale(range(-1,3) axis(1)) ///
ytitle("Grados Celsius ",axis(1)) yline(0) ///
ylabel(-1(0.5)1.5, axis(1) angle(horizontal) nogrid) ///
text(1 1992 "Decaida y Colapso" "de los pescadores" "de Northern Gulf",
///
box margin(medium)) ///
jj line maxarea winter, ///
yaxis(2) ylabel(50(50)200, axis(2) angle(horizontal)) ///
yscale(range(-100,221) axis(2)) ///
ytitle(" 1000s de km^2",axis(2)) ///
yline(173.6, axis(2) lpattern(dot)) ///
jj if winter>1949, ///
xtitle("") xlabel(1950(10)2000) xtick(1950(2)2002) ///
legend(position(11) ring(0) rows(2) order(2 1) ///
label(1 "Mxima rea de hielo") label(2 "Mnima temperatura")) ///
note("Fuente: Hamilton, Haedrich and Duncan (2003); dtata de DFO (2003)")

76

Mnima temperatura
Mxima rea de hielo

150

Grados Celsius

1.5

100
Decaida y Colapso
de los pescadores
de Northern Gulf

50

1000s de km^2

200

.5
0
-.5
-1
1950

1960

1970

1980

1990

2000

Fuente: Hamilton, Haedrich and Duncan (2003); dtata de DFO (2003)

Figura 3.39
Para localizar la pesca de bacalao en la misma grca con la temperatura
y el rea de hielo, necesitamos tres escalas verticales independientes. La gura
3.48 envuelve tres ploteos superpuestas, la cual todos estn en el lado izquierdo
del eje y por defecto. La forma bsica de estos tres ploteos es como sigue:
connected maxarea winter; un ploteo de lneas conectadas entre la variable maxarea y winter, usando yaxis(3) la cual debera estar ubicado en la parte
ms izquierda del eje y. Los rangos de escala en el eje y va desde -300 a 200,
sin lneas horizontales como malla. Su titulo es "rea de Hielo, 1000 km^2" .
Este ttulo es localizado en la posicin noroeste, placement(nw).
line cil winter; plotea una lnea entre la variable cil y winter, usando
yaxis(2) y rangos de escala entre -4 hasta 3, con las etiquetas por defecto.
connected maxarea winter; un ploteo entre cod y winter, usando yaxis(1).
El titulo se localiza en la parte suroeste.
Brindando estos tres componentes del ploteo de forma conjunta, el comando
para elaborar la gura 3.48 aparece a continuacin.
Example :
graph twoway connected maxarea winter, ///

77

N. Gulf cod catch, 1000 tons


60 80 100
40
20

Mxima rea de hielo


Mnima temperatura
N. Gulf cod catch, 1000 tons

Pesca de Bacalao,1000 toneladas


-1 -.5 0 .5 1 1.5

Area de Hielo, 1000 km^2


50 100 150 200

yaxis(3) yscale(range(-300,220) axis(3)) ///


ylabel(50(50)200, nogrid axis(3)) ///
ytitle("Area de Hielo, 1000 km^2 ",axis(3) placement(nw)) ///
clpattern(dash) ///
jj line cil winter, ///
yaxis(2) yscale(range(-4,3) axis(2)) ///
ylabel(, nogrid axis(2)) ///
ytitle(" Temperatura CIL, Grado Celsius",axis(2)) ///
clpattern(solid) ///
jj connected cod winter, ///
yaxis(1) yscale(range(0,200) axis(1)) ///
ylabel(, nogrid axis(1)) ///
ytitle(" Pesca de Bacalao,1000 toneladas",axis(2) placement(sw)) ///
jj if winter>1959, ///
legend(position(7) ring(0) rows(3) ///
label(1 "Mxima rea de hielo") label(2 "Mnima temperatura")) ///
xtitle("") xlabel(1960(5)2000, grid)

1960

1965

1970

1975

1980

1985

1990

1995

2000

Figura 3.40

3.5 Guardar, Combinar y Exportar Grcos


Una vez que el grco fue creado, este puede ser guardado. Para esto STATA
usa el comando save principalmente para guardar los grcos en STATA con
extensin *.gph. El procedimiento puede realizarse usando la opcin saving()

78

en la misma lnea de comando del grco o a travs del comando graph save
despus que el grco haya sido creado. Cuando guardamos en esta ltima
manera, se puede volver a acceder a los grcos para ser manipulados a gusto
personal a travs del Editor de Grcos.
Example :
*Guardando un Grco en STATA
*I Forma
graph twoway scatter mpg weight,saving(g1)
*II Forma
tw(sc mpg weight, msize(small)) (lt mpg weight, lwidth(medthick)), ///
title("Dispersin de Puntos y Lnea OLS Ajustada")
graph save g2.gph,replace
Dos o ms grcos pueden combinarse en uno solo utilizando el comando
graph combine.
Example :
*Combinemos el graco g1.gph y g2.gph
graph combine g1.gph g2.gph

10

20

20

Mileage (mpg)

30

30

40

40

Dispersin de Puntos y Linea OLS Ajustada

10

2,000
2,000

3,000
4,000
Weight (lbs.)

5,000

3,000
4,000
Weight (lbs.)

Mileage (mpg)

F igura 3:3:Combinar Grcos


79

5,000

Fitted values

Dado que la extensin del graco por default del STATA es *.gph, no es
reconocido por otros programas, tal como procesadores de texto. Para guardar
un grco en otro formato, se debera usar el comando graph export. Varios formatos estn disponibles, incluyendo PostScript (.ps), Encapsulated PostScript (.eps), Window Metale (.wmf), PDF (.pdf) y Postable Network Graphics (.png). La mejor seleccin del formato depende en parte de cual procesador
de texto se usa, por eso es necesario una prueba de ensayo y error.
Example :
*Exportar Grcos
*Guardamos el grco combinado como:
graph
graph
graph
graph
graph

export
export
export
export
export

g12.wmf
g12.ps
g12.eps
g12.pdf
g12.png

//Window meta-le
//PostScript
//Encapsulated PostScript
//PDF
//Portable Network Graphics

80

Cap. 4 Modelo de Regresin


Lineal Clsico
4.1 Modelo de Regresin Lineal (OLS)
El objetivo del modelo de regresin lineal es estimar los parmetros de la media
condicional lineal:
E (yjx) = x0

1 x1

2 x2

+ :::: +

k xk

donde usualmente un intercepto es incluido tal que x1 = 1. Aqu x es un


matriz de nxk con k regresores y n observaciones, es un vector columna de
kx1.
A veces E (yjx) es de inters directo para la prediccin. Sin embargo, estudios economtricos estn interesados ms en los efectos marginales:
@E (yjx)
=
@xj

para el j-simo regresor. Por ejemplo, estamos interesados en los efectos


marginales del seguro de salud privado suplementario sobre los gastos mdicos. Un atractivo del modelo lineal es que los efectos marginales se obtienen
directamente de estimador de la pendiente.
El modelo de regresin lineal especica un trmino de error aditivo tal que
para un valor tpico de la i-sima observacin:
yi = x0i + ui

; i = 1; ::::; N

OLS que minimizan la suma de cuadrados de los errores,


PNLos estimadores
2
x0i ) .
i=1 (yi

La notacin matricial otorga una forma compacta de representar los estimadores y la varianza. Denimos el vector columna v de N x1 para tener la ith
observacin de yi , y denamos la matriz de regresores X de N xk que tiene la ith
la x0i . Entonces los estimadores OLS pueden ser escritos de diferentes formas:
b

=
=

(X0 X)
N
P

i=1

xi x0i

81

X0 y
1 N
P

i=1

xi yi

N
P

x21i

B i=1
BN
BP
B x2i x1i
b=B
Bi=1
B
..
B
.
B
@P
N
xki x1i

N
P

1
10 N
P
x1i xki C B x1i yi C
i=1
C
C Bi=1
N
C
CBP
C B x2i yi C
C
CB
C
C Bi=1
C
B
C
..
..
C
B
C
.
.
C
CB
A
@
A
N
N
P
P 2
xki yi
xki
N
P

x1i x2i

i=1
N
P

i=1

x22i

..
.

..

i=1

i=1

i=1

4.2 Propiedades de los Estimadores OLS


Las propiedades de algunos generadores varan con el supuesto hecho acerca del
proceso de generador de datos. Para modelos de regresin lineal, este reduce los
supuestos acerca de la regresin del termino de error ui .
El punto de inicio para el anlisis es asumir que ui satisface los siguientes
condiciones clsicos:
1. E (ui jxi ) = 0
2. E u2i jxi =

(exogeneidad de los regresores).


2

(condicin de homocedasticidad).

3. E (ui uj jxi ) = 0; i 6= j

(condicin de no correlacin).

El supuesto 1 es esencial para la estimacin consistente de


e implica que
la media condicional est correctamente especicada. Esto quiere decir que la
media condicional es lineal y que todas las variables relevantes han sido incluidas
en la regresin.
El supuesto 2 y 3 determina la forma del estimador de la matriz de varianzacovarianza de V b . El supuesto 1, 2 y 3 conduce a que b est distribuido
normalmente asintticamente:
V
donde:

b = s2 (X0 X)

s2 = (N

k)

N
P

i=1

x0i b .

u
b2i

yu
bi = yi
Bajo los supuestos 1,2 y 3, los estimadores son completamente ecientes, es decir, tienen varianza mnima. Si adicionalmente, ui est
distribuido normalmente, entonces los t estad{sticos presentan una distribucin de t student. Cuando los supuestos 2 y 3 no se cumplen, entonces los
estimadores OLS no son ecientes.
82

4.3 Estimacin del Modelo de Regresin


Para este caso analizaremos los gastos mdicos de individuos que tienen 65 aos
y ms quienes se someten al cuidado de salud a travs del programa mdico de
U.S, la cual el seguro mdico no cubre todos los gastos. Cerca de la mitad de
los individuos elegidos por consiguiente compran un seguro suplementario en el
mercado privado que provee un seguro contra varios gastos de medicina cara.
As que vamos a considerar el impacto de este seguro complementario sobre el
total de los gastos mdicos de un individuo, medido en dlares. Una formal
investigacin debera controlar la inuencia de otros factores que determinen
el gasto mdico por individuo, siendo los factores socio demogrco como la
edad, gnero, educacin, ingreso, locacin geogrca y estatus de salud como
la presencia de condiciones limitantes o crnicas. Para dicho n utilizaremos la
base mus03data.dta.
Usaremos el comando regress para correr un modelo de regresin OLS del
logaritmo natural de los gastos mdicos (ltotexp) que sera nuestra variable a
explicar, sobre otras variables que nos ayuden a entender el modelo, tal como si
el individuo cuenta con el seguro privado suplementario(suppins), sus ingresos
(income), otras medidas como la edad (age), el gnero (female) y el estatus de
salud que presenta como el numero de problemas crnicos (totchr) , si presenta
limitaciones funcionales (phylim) o de actividad (actlim). Los detalles de la
descripcin de las variables lo podemos ver con el comando describe.
Antes de comenzar con la regresin, es til investigar las correlaciones entre
los pares de variables de la variable dependiente y otras variables claves usando
el comando correlate.
Example :
*Matriz de Correlacin entre las variables
correlate ltotexp suppins phylim actlim totchr age female income

M atriz de Correlacion
83

Los gastos estn altamente correlacionados con la medida de estatus de salud


phylim, actlim y totchr.
Como se mencion el comando regress nos permite realizar una regresin
OLS y muestra una tabla del anlisis de varianza (ANOVA), el estadstico de
bondad de ajuste, los coecientes estimados, errores estndar, los estadsticos
de student, probabilidad e intervalos de conanza.
Example :
*Regresin OLS
regress ltotexp suppins phylim actlim totchr age female income

Re gresion OLS
Los regresores son conjuntamente signicativos, porque el estadstico F es
de 124.98 y tiene una probabilidad de 0.000. Al mismo tiempo, muchas de
las variaciones es inexplicado con un R2 =0.2289. La raz de Error Cuadrtico
Medio (Root MSE) reporta el error estndar de la regresin. Usando el test
de las dos colas a un nivel de 5%, todos los regresores son individualmente
signicativos estadsticamente porque p <0.05, a excepcin de age y female.
Lo ms importante es la signicancia estadstica de los coecientes, que signican la medida del impacto de los regresores sobre el gasto medico. Esta
interpretacin es sencilla cuando las variables estn medidas en niveles, pero en
este caso se encuentra en logaritmos, as que los estimadores necesitan ser interpretados como semi-elasticidades. Por ejemplo, para el coeciente de suppins
es 0.256. Esto quiere decir que el seguro suplementario privado est asociado
con un 0.256 aumento proporcional, o 25.6% incremento en los gastos mdicos.
Similarmente, grandes efectos se obtienen para la media del estatus de salud,
84

donde el gasto de salud para las mujeres son 8.4% menor que el de los hombre
manteniendo constante los dems factores. El coeciente de income de 0.0025
sugiere un efecto muy pequeo, pero esto es engaoso ya que esta expresado
en miles. La desviacin estndar del ingreso es 0.001, tal que una desviacin
del ingreso conduce a un aumento proporcional de 0.001, o 0.1%, en los gastos
mdicos.

4.4 Prueba de Hiptesis


El comando test desarrolla test de hiptesis usando el procedimiento del test
de Wald que usa los coecientes del modelo estimado y la matriz de varianzacovarianza. Presentamos algunos ejemplos.
Un test comn es la igualdad de coecientes, donde vamos a testear que
las limitaciones funcionales (phylim) tiene el mismo impacto sobre los gastos
mdicos que las limitaciones de actividad (actlim). El test de H0 :
phy lim =
act lim .
Example :
*Test de Hiptesis para Equivalencia de Coecientes
test phylim=actlim

T est de Hipotesis : igualdad de coef icientes


Dado que p < 0:61 > 0:05, no rechazamos la hiptesis nula al 5% de nivel
de signicancia. No hay signicancia estadstica entre los coecientes de las dos
variables.
Otro comn test es la signicancia estadstica de un subconjunto de regresores. Un test de signicancia conjunta de la medida de estatus de salud es,
H0 :
phy lim = 0; act lim = 0; totchr = 0, y la Ha es que al menos uno sea
diferente de cero.

85

Example :
*Test de Hiptesis Conjunta
test phylim actlim totchr

T est de Hipotesis : signif icancia conjunta


Estas tres variables son conjuntamente signicativo estadsticamente al nivel
de 5% porque p < 5%:

4.5 Prediccin del Modelo de Regresin


Para el modelo de regresin lineal, el estimador de la media condicional de y
dado x = xp , E (yjxp ) = x0p , es el valor predicho de y condicional yb = x0p b .

4.5.1 Prediccin en la Muestra

Nos enfocaremos sobre la prediccin para cada observacin en la muestra, es


decir, ybi = x0i b predice E (yi jxi ) para cada i = 1; :::; N: para hacer esto usamos
el comando predict seguido por un nombre la cual es creado como variable.
La opcin de este comando por default es ybi . La opcin residual nos permite
obtener los residuos
u) y con rstandard obtenemos los residuos
p del modelo (b
2
estandarizados (b
u= b ) . Este comando siempre va despus del comando de
regresin, en este caso el comando regress. El comando quietly nos permite
omitir los resultados de la regresin en la Ventana de Resultados del STATA.
Tambin es posible guardar la informacin de la regresin con un nombre, esto
se hace usando el comando estimates store.

Example :
*Prediccin del Modelo

86

quietly reg ltotexp suppins phylim actlim totchr age female income
predict ltotexp_est
predict residuos, residual
predict residuos_est, rstandard
predict ltotexp_stdp , stdp
predict ltotexp_stdf , stdf
summ ltotexp ltotexp_est
estimates store modelo_original
La opcin stdp provee los errores estndar de la prediccin, y la opcin stdf
provee los errores estndar de la prediccin para cada una de las observaciones
de la muestra.
El cuadro estadsticos resumido nos muestra que el promedio del valor predicho ltotexp_est es igual a la variable dependiente ltotexp.

4.5.2 Efectos Marginales


El comando de postestimacin mfx calcula los efectos marginales y evala las
elasticidades en la media muestra, junto con errores estndar asociados e intervalos de conanza. El comando mfx calcula para cada regresor continuo
@E (yjx) =@x, y para variables discretas E (yjx), evaluado en = v y x =x:
Para modelos lineales, el estimador del efecto marginal del j esimo regresor
es b j , as que no sera necesario utilizar el comando mfx. Pero mfx tambin
puede ser usado para calcular elasticidades y semi-elasticidades. Por ejemplo,
la opcin eyex calcula las elasticidades @E (yjx) =@x (x=y), evaluado en la
media muestral, la cual equivaldra a b j (x=y) para modelos lineales.
Example :
*Efectos Marginales
quietly reg ltotexp suppins phylim actlim totchr age female income
mfx
mfx,eyex
87

Ef ectos M arg inales y Elasticidades


Segn el cuadro de efectos marginales, unincremento de 1% en sus ingresos,
provocara un incremento de 0.25% en los gastos mdicos. Y dado el cuadro
de Elasticidades, se podra concluir que el seguro mdico es un bien normal
donde presenta una elasticidad inelstica (menos a la unidad), ya que guarda
una relacin directa con el ingreso.

4.6 Diagnstico del Modelo de Regresin


La mayora de los enfoques para decidir sobre un adecuado modelo es el Test
de Wald que ja un buen modelo y determina si la data suporta la necesidad de
enriquecerse. Por ejemplo, podemos aadir regresores adicionales para el modelo y probar si sus coecientes son iguales a cero. Otros son anlisis visuales tal
como plotear los residuos contra los valores de la variable dependiente predichas.
Algunos son diagnsticos estadsticos tal como la inuencia estadstica que indica la relacin de importancia de observaciones individuales. Y algunas son
formales de test para contrastar la falla de una o ms supuestos del modelo.
88

Presentamos brevemente diagnsticos estadsticos y grcos, antes de dar un


tratamiento prolongado del test de especicacin.

4.6.1 Diagnsticos de los Residuos


4.6.1.1 Ploteos de los Residuos
Consideramos varios ploteos de los residuos que nos ayudan a la deteccin de
outlier, donde un outlier es una observacin pobremente predicha por el modelo. Una manera para hacer eso es gracar los valores actuales contra los valores
predichos de la variable dependiente. El comando rvfplot da una transformacin de esto, plotea los residuos u
bi = yi ybi ; contra los valores predichos
ybi = x0i b .
Example :

quietly reg ltotexp suppins phylim actlim totchr age female income

-6

-4

Residuals
-2
0

rvfplot

9
Fitted values

10

11

Ploteo de los Re siduos contra los valores despus


de la regresin OLS
La gura no nos indica algunos outliers extremos, aunque existen tres observaciones con un valor de residual menores que 5 que podran ser investigados.
STATA provee otros ploteos residuales diferentes. El comando de postestimacin rvpplot plotea los residuos con los regresores individuales. El comando
89

avplot provee el ploteo de una variable aadida, o un ploteo de una regresin


parcial que es til para la deteccin de outliers19 .
4.6.1.2 Normalidad de los Residuos
Uno de los supuestos del Modelo de Regresin Lineal Csico es la Normalidad
de los residuos, y para probar este supuesto se propone diversas pruebas que se
muestra a continuacin:
a). Histograma de los Residuos
Se utiliza la forma de la Funcin de Densidad de los errores estimados y
sobreponemos una distribucin normal para realizar una comparacin visual.
Example
*Histograma de los Residuos

.1

Density
.2

.3

.4

histogram residuos, normal

-6

-4

-2

Residuals

b). Prueba de Jarque Bera


Esta prueba es asinttica, donde calcula los coecientes de Asimetra (S) y
Curtosis (K) de los residuos estimados para formar el siguiente estadstico de
prueba:
JB = n
1 9 Para

S2
(K 3)2
+
6
24

ms detalle y referencias adicionales, ver help regress postestimation.

90

Para una variable normalmente distribuida, S = 0 y K = 3. Por lo tanto,


la prueba de JB de normalidad constituye una hiptesis nula de que ambos
estadsticos son 0 y 3 respectivamente. En dicho caso, se espera que el valor
del estadstico de JB sea igual a cero. Se demostr que el estadstico JB asintticamente sigue una distribucin chi-cuadrado con 2 grados de libertad. Si el
valor de la probabilidad calculada no sobrepasa el nivel de signicancia de 5%,
entonces se rechaza la hiptesis nula de normalidad.
STATA muestra el desarrollo de este estadstico con el comando sktest.
Example
*Prueba de Jarque Bera
sum residuo,detail
sktest residuos

Segn el test de JB rechazaramos la hiptesis nula de que el trmino de


error siga una distribucin normal, debido a que la probabilidad no sobrepasa
el nivel de signicancia del 5%.

4.6.2 Test de Especicacin


4.6.2.1 Test de Variables Omitidas
La mayora de los test de especicacin incluyen regresores adicionales y prueban si son estadsticamente signicativos usando el Test de Wald con la hiptesis
nula de que el coeciente es igual a cero. Los regresores adicionales pueden ser
una variable que no est incluida, una transformacin de una variable ya incluida tal como el trmino cuadrtico, o el producto de variables (trminos de
iteracin).
Para observar cual especicacin del modelo sera el ms correcto se recurre
a los criterios de informacin, entre los ms conocidos y utilizados tenemos al
de Akaike (AIC) y el de Schwarz (SIC). Estos estadsticos se denen de la
siguiente manera:

91

AIC
ln(AIC)

SIC
ln(SIC)

u
bi
SCR
= nk=n
n
n
SCR
k
ln(n) + ln(
)
n
n

= nk=n
=

u
bi
SCR
= e2k=n
n
n
2k
SCR
+ ln(
)
n
n

= e2k=n

donde k es el nmero de regresores incluyendo la interseccin y n es el tamao


de la muestra. Adems, los factores de penalizacin para ambos estadsticos
k
son 2k
n y n ln(n) respectivamente. El criterio de decisin consta en elegir aquel
modelo que presenta un menor estadstico de criterio de informacin.
STATA cuenta con ambos estadsticos la cual se sealan con el comando estat
ic. Cabe resaltar que STATA nombre al estadstico SIC como BIS (Criterio de
Informacin Bayesiano). Para utilizar este comando se necesitan dos modelos
que testear, por ende, se necesitan realizar dos regresiones.
*Example:
*Criterios de Informacin
//Para un caso ilustrativo, supongamos que el sexo no tiene
//inuencia sobre los gastos mdicos, as que el nuevo
//modelo no incluir la variable female.
quietly reg ltotexp suppins phylim actlim totchr age female income
estat ic
quietly reg ltotexp suppins phylim actlim totchr age income
estat ic

92

Como vemos el primer modelo tiene un menor valor de los criterios de informacin (AIC y BIC), as que el modelo que mejor se preere es incluyendo a la
variable female como un factor inuyente en los gastos mdicos.
4.6.2.2 Test del Modelo de Box-Cox
Un enfoque comn sobre el test de especicacin es ja un modelo atractivo
que pruebe un modelo sencillo o corriente como un caso especial y desarrolla un
Test de Wald para los parmetros restringidos que condice al modelo sencillo.
Aqu nosotros consideramos un test que especica el modelo corriente. Deseamos decidir si un modelo de regresin para los gastos mdicos es mejor en
logaritmos o en niveles. No hay una manera obvia para comparar los dos modelos porque tienen diferentes variables dependientes. Sin embargo, la transformacin de Box-Cox conduce al mejor modelo donde incluye el modelo lineal o
en logaritmos como un caso especial. Especcamente, jamos el modelo con la
variable dependiente transformada.
g (yi ; ) =

yi

= x0i + ui

donde y son estimados bajo el supuesto que ui


conduce a tres casos especcos:
1. g (yi ; ) = y

1 s

2. g (yi ; ) = ln y s

= 1:
= 0:
93

N 0;

: Esto nos

3. g (yi ; ) = 1

1
yy

1:

La transformacin de Box-Cox introduce un parmetro no lineal en el modelo. STATA provee el comando boxcox para jar el modelo.
Example :
boxcox totexp suppins phylim actlim totchr age female income ///
if totexp>0

T ransf ormacion de Box

Cox

La hiptesis nula de que = 0 es rechazada fuertemente, as que el modelo en


logaritmos es rechazado. Sin embargo, el Modelo de Box-Cox con el estimador
de b = 0:0759 la cual muy difcil de interpretar y usar, aunque da un mayor
soporte para que el valor de = 0 en vez de que = 1: As que elegimos el
modelo en logaritmos.

94

4.6.2.3 Test de la Forma Funcional de la Media Condicional


El modelo de especicacin lineal especica que la media condicional de la variable dependiente (ya sea medido en niveles o en logaritmos) equivalente a x0i :
Una prueba estndar para la especicacin correcta es un test de aumento de
variable. Una enfoque es aadir potencias de ybi = x0i b ; los valores predichos de
la variable dependiente como regresores y testear su signicancia estadstica.
El comando de postestimacin estat ovtest prev un test de Reset Ramsey
la cual regresiona y sobre x; yb2 ; yb3 y yb4 , y testea que los coecientes yb2 ; yb3 y yb4
sean cero conjuntamente.
Example :

*Test de la Forma Funcional de la Media Condicional-Reset Ramsey


quietly reg ltotexp suppins phylim actlim totchr age female income
estat ovtest

T est de Re set Ramsey


El modelo es fuertemente rechazado porque p = 0:000:

4.6.3 Multicolinealidad
Entre las variables explicativas suele suceder grados de colinealidad, si en caso
una de estas variables es perfectamente colineal con otra variable entonces la
matriz X0X ser singular y no se podr estimar los parmetros. STATA puede
reconocer la colinealidad perfecta pero es muy difcil en el caso de la colinealidad
cercana.
En el primer punto, STATA elimina las variables hasta que la matriz X0X
sea invertible. En el segundo caso, se da cuando existe correlacin parcial alta
entre las variables o existe dependencia lineal cercana en la matriz de variables explicativas, lo cual provoca que el ajuste del modelo sea bueno pero los
parmetros estimados tengan errores estndar muy altos o con signos incorrectos.

95

Para realizar este diagnstico utilizamos el estadstico Factor Inador de


Varianza (F IV , por sus siglas en ingls) que se dene como:
F IV =

1
1 Rk2

donde Rk2 es el R2 en la regresin de xk sobre los regresores restantes. Si el


F IV est ms cercano a 1 no habr colinealidad entre las variables explicativas.
Este estadstico puede ser invocado con el comando estat vif.
Example :
*Multicolinealidad
quietly reg ltotexp suppins phylim actlim totchr age female income
estat vif

M ulti col inealidad

V IF

Dado que el F IV para cada uno de los regresores est alrededor de la unidad,
no hay incidencia de algn problema de multicolinealidad.

4.6.4 Perturbaciones No Esfricas


Cuando los trminos de error no son iid mantenindose los supuestos de una
relacin lineal, independencia y esperanza cero del trmino de error, los estimadores OLS siguen siendo consistentes (no afectan a la propiedad de insesgamiento) pero el estimador de la matriz de varianza-covarianza no lo sern,
es decir, los estimadores OLS dejan de ser los mejores estimadores linealmente
insesgados-MELI. As los errores estndar no son los correctos.
Existen dos casos posibles cuando ocurre este problema: a). Cuando la varianza condicional de los errores cambian entre observaciones, problema conocido
como heteroscedasticidad ; y b). Cuando los errores estn correlacionados unos

96

con otros lo cual no estn independientemente distribuidos, problema conocido


como Autocorrrelacin.
y =X +u
donde:
E(u)
E(u u0 )

=
=

0
u

Bajo el problema de Perturbaciones No Esfricas se tiene:


b

=
=

XX0

XX0

+ XX

Xy
X (X + u)
1

Xu

E b =

El estimador OLS es insesgado. Ahora su varianza:


V ar b
donde

La matriz

XX0

XX0

= E

Xuu0 X0 (X0 X)

uX

(X0 X)

es la matriz de varianza-covarianza del estimador


u

puede estar expresado de la siguiente manera:

Heteroscedasticidad

Autocorrelacin

2
1

B0
B
=B .
@ ..
0

B 1
B
=B .
@ ..

n 1

0
2
2

..
.
0

..

2
n

1
..
.
n 2

97

0
0
..
.

C
C
C
A

nxn

n 1

..

C
.. C
. A
1
nxn

n 2C

4.6.4.1 Test de Heteroscedasticidad


Si no existe informacin a priori sobre la naturaleza de la heteroscedasticidad,
es comn realizar un anlisis de los residuos que se generan.
a). Ploteo de los residuos
Se inicia con un anlisis grco de los residuos, ui = yi ybi , ya que estos son
importantes para identicar puntos atpicos u outlier. Como sabemos, entre las
propiedades ms importantes de los residuales se encuentran que tienen media
cero y su varianza se aproxima por la expresesin:
P 2
u
b
SCR
2
=
bu =
n k
n k
A continuacin mostramos un grco de dispersin de puntos entre los valores ajustados yb y los residuos al cuadrado u
b2 con patrones hipotticos para
identicar la existencia de heteroscedasticidad:

Y el grco siguiente muestra un diagrama de dispersin de puntos entre las


variables explicativas X y los residuos al cuadrado u
b2 :

98

STATA tiene implementado dentro de sus rutinas ambos tipos de gracas


para la identicacin de heteroscedasticidad de los residuales. Despus de estimar el modelo de regresin los comandos son rvfplot y rvpplot. El comando
rvfplot muestra el diagrama de dispersin entre los residuales y los valores
ajustados yb: Por su parte, rvpplot elabora el diagrama de dispersin entre los
residuales y cualquiera de las variables predictoras (X), razn por la que se
requiere la variable a considerar.
*Ploteos
quietly reg ltotexp suppins phylim actlim totchr age female income
rvfplot , yline(0)
gen res2=residuos^2

sc res2 ltotexp_est
b). Prueba de Park
De aqu en adelante se presentarn mtodos formales de identicar la heteroscedasticidad. Esta prueba nos sugiere que la varianza heteroscedastica 2i
es una funcin de las variables explicativas Xi . La forma funcional que sugiere
es:
99

ln ubi 2 =

+ ln Zi + vi

donde u
b2 ser una aproximacin de 2i y Zi sera algunas o todas las variables explicativas sealadas en la regresin original: Si el estimador resulta
signicativo, entonces existe presencia de heteroscedasticidad en los datos.
Supongamos que estamos presintiendo un problema de hetroscedasticidad
causada por la variable de ingresos (income). As que procedemos de la siguiente
forma para realizar este test.
Example :
*Prueba de Park
quietly reg ltotexp suppins phylim actlim totchr age female income
gen ln_res=ln(res2)
reg ln_res income

Pr ueba de P ark
Como se puede observar el estimador que acompaa a la variable income es
signicativo a un nivel de signicancia del 5%, as que podemos estar pensando
la existencia de heteroscedasticidad en los trminos de error causado por los
ingresos.
c). Prueba de Glejser
Es similar a la prueba de Park, la cual sugiere hacer una regresinn auxiliar
sobre los valores absolutos de u
b sobre las variables explicativas Xi 20 .
2 0 Glejser

sugiere las siguientes formas funcionales adicionales:

100

jubi j =

+ ln Zi + vi

En la prctica, la tcnica de Glejser puede usarse para muestras grandes, pero


en muestras pequeas puede usarse estrictamente como herramienta cualitativa
para obtener una nocin de la heteroscedasticidad.
Example :
*Prueba de Glejser
quietly reg ltotexp suppins phylim actlim totchr age female income
gen abs_res=abs(residuos)
reg abs_res income

Pr ueba de Glejser
El parmetro asociado a income no es signicativo al nivel de 5%., peri si
sera al 10%. As que necesario realizar ms pruebas.
d). Prueba de Breusch-Pagan-Godfrey
Esta prueba supone la siguiente regresin auxiliar:
uei 2 =

1 Z1i

jb
uj

jb
uj

jb
uj

2 Z2i :::

p
Xi + vi
1
+ vi
+
Xi
1
+ p
+ vi
Xi
+

101

p Zpi

+ vi

donde:
2

uei =

u2i =

n
X
i=1

u
b2i =n

A continuacin se calcula el estadstico de prueba bajo la hiptesis nula de


Homocedasticidad. Se puede demostrar que el producto del tamao de muestra
por R2 obtenida de la regresin auxiliar sigue asintticamente una distribucin
chi-cuadrado con grados de libertad similar al nmero de estimadores en la
regresin auxiliar. Esto es:
nR2

2
p

Una vez que se encuentra el estadstico de prueba se compara con el estadstico chi-cuadrado crtico con p grados de libertad, tal que s nR2 = calculado >
critico ; la conclusin es que hay heteroscedasticidad.
La Prueba de Breusch-Pagan-Godfrey ha sido implementada en el STATA,
cuyo comando es estat hettest o simplemente hettest despus de realizar la
regresin principal.
Example :
*Prueba de Breusch-Pagan-Godfrey
quietly reg ltotexp suppins phylim actlim totchr age female income
estat hettest
hettest

e). Prueba de Goldfeld-Quandt


La idea de esta prueba es que si los errores son homocedasticos entonces
tienen la misma varianza en toda la muestra, razn por la que las varianzas de
los residuales de una parte de las observaciones de la muestra deben tener igual
varianza a la de cualquier otra parte de las observaciones de la muestra.
102

El acercamiento consiste en probar la presencia de heteroscedasticidad mediante una prueba de igualdad de varianzas de los residuales mediante el estadstico F . El procedimiento para realizar esta prueba es el siguiente:
1. Identicar una variable con que la varianza de los errores est correlacionada. En nuestro caso ilustrativo esta variable es income.
2. Ordenar en forma ascendente a las observaciones segn la variable explicativa elegida.
3. Omitir c observaciones centrales, donde c es especicada a priori, dividiendo a la muestra restante n c observaciones en dos grupos cada uno con
un total de (n c)=2 observaciones. La determinacin de c es arbitraria,
sin embargo, suele considerar criterios de omitir entre un 20 y un 25% de
la muestra.
4. Estimar dos regresiones separadas correspondientes a los dos grupos. De
estas se obtienen la suma de cuadrados residuales SCR1 y SCR2 respectivamente.
5. Se calcula el estadstico F :

Fcalculado =
con gl1 = gl2 =

(n c)
2

SCR2 =gl2
SCR1 =gl1

k grados de libertad.

6. Bajo la hiptesis nula de homocedasticidad, la regla de decisin es:

Fcalculado > Fcr{tico


donde Fcr{tico = F (n

c)
2

;
k;

(n

c)
2

Se rechaza la Hiptesis Nula


k

Example :
*Prueba de Goldfeld-Quandt
*Paso 1. Ordenar los valores de la variable explicativa
*que inuira en la heteroscedasticidad
sort income

sum ltotexp suppins phylim actlim totchr age female income


sum income,d
103

//Trabajamos con valores de ingreso positivo y sin incluir


//los missing values de la variable dependiente ltotexp
drop if income<=0
// Se eliminaron solo 88 observaciones, ahora tenemos
//2976 observaciones disponibles.

drop if ltotexp==.
// Se eliminaron solo 103 observaciones,ahora tenemos
//2873 observaciones disponibles.
//generamos un identicador para la variable income ordenada
gen id=[_n]
*Paso 2. Omitir "c" observaciones centrales y dividiendo
*la muestra en (n-c)/2 observaciones
//para este caso omitiremos el 25% de las observaciones
//centrales, es decir, 25%(2873)=718.25, redondeando 718
//observaciones eliminadas, entonces el primer grupo sera
//hasta n-c/2=(2873-718)/2=1077.5, sea 1078obs. y el segundo
//grupo sera a partir de n-(n-c/2)=n+c/2=2873-1077.5=1795.5,
// la observacin 1796 hasta el ltimo.

gen m=.
replace m=1 if
replace m=2 if

id<=1078
id>=1796

*Paso 3. Estimamos las regresiones para cada grupo


**Grupo 1
reg ltotexp suppins phylim actlim totchr age female income ///
if m==1
//SCR1= 1657.62507
//gl1=1070

**Grupos 2
104

reg ltotexp suppins phylim actlim totchr age female income ///
if m==2

//SCR2= 1406.72964
//gl2=1070
*Paso 4. Hallamos el F-calculado
display "F-calculado="
display ( 1406.72964/1070)/(1657.62507/1070)
//F-calculado=.84864163
//F-critico con 744 gl en el numerador y denominador es cercano a 1

*Paso 5. Conclusin
//Dado que: F-calculado<F-critico, se acepta la hiptesis nula,
//es decir, existe homocedasticidad en los datos.
f ) Prueba de White
Esta prueba estima una regresin auxiliar entre los residuales al cuadrado
sobre sus regresos originales, el cuadrado de los regresos y el producto cruzado
de estos. La prueba no requiere un conocimiento de la fuente de la heteroscedasticidad y no depende del supuesto de normalidad de los regresos. Adems la
hiptesis nula se basa en la homocedasticidad de los residuos.
El procedimiento se especica a continuacin:
1. Estimar el modelo de regresin lineal y obtener los residuos.
2. Estimar la regresin auxiliar siguiente y obtener el R2 :
ubi 2 =

1 Z1i

2 Z2i :::

p Zpi

+ vi

3. Calcular el estadstico de prueba dado por el producto del tamao de


la muestra n y el R2 de la regresin auxiliar, la cual sigue de manera
asinttica una distribucin chi-cuadrado con grados de libertad igual al
nmero de regresores (sin incluir el trmino constante) en la regresin
auxiliar.
2
4. Si n R2 > {cr{tico
, la conclusin es que existe heteroscedasticidad.

105

La prueba de White se puede realizar va el comando de estat imtest, o


simplemente imtest, white o whitetst. STATA calcula la prueba extendida
de White considerando en la regresin a los residuos al cuadrado contra los
regresores, los productos cruzados y cuadrados de los distintos regresores.
Example :
*La Prueba de White
quietly reg ltotexp suppins phylim actlim totchr age female income
estat imtest
estat imtest,white
imtest
white
whitetst
Segn el test de White se rechaza la hiptesis nula, por lo tanto, existe
heteroscedasticidad en los datos.
4.6.4.2 Test de Autocorrelacin o Correlacin Serial
El supuesto de no autocorrelacin del modelo clsico se relaciona con las perturbaciones poblacionales ut , las cuales no pueden observarse directamente. En
su lugar se dispone de sus valores aproximados, u
bt , que se obtienen del mtodo
de OLS. A continuacin mostramos patrones de comportamiento de los residuos
para detectar la Autocorrelacin a excepcin del ltimo graco.

106

Para ilustrar los temas a continuacin, hacemos uso de la base de datos de


los Determinantes del Precio Interno del Cobre en los Estados Unidos (198511980), presentado en la Tabla 12.7 en el captulo 12 de Damodar Gujarati. Esta
base contiene informacin sobre el precio promedio interno del cobre en centavo
por libre de los ltimos doce meses en USA (C); PBI anual en miles de millones
de dlares (G); ndice promedio de doce meses del cobre en la bolsa de metales
de Londres en libras esterlinas (L); el nmero de construcciones de casas por
ao en miles de unidades (H) y el precio promedio del aluminio de los ltimos
doce meses en cetavos de dlar por libra (A).
Example :
insheet using Table_12_7.csv,clear
107

describe
*Seteamos la base como Serie de Tiempo
tsset time
graph matrix c i l h a

50

100

150

1000

1500

2000

2500
100

50

150
100

50
1000

500

2500
2000

H
1500
1000

80
60

A
40
20
0

50

100

500

1000

20

40

60

80

a). Mtodo Grco


Aunque las u
bt no son los mismos que las ut , con frecuencia una anlisis visual
de las primeras nos dan alguna clave de la presencia de autocorrelacin. Hay
distintas formas de examinar grcamente los residuos.
Se puede gracar los residuos con respecto al tiempo, a travs de una graca
de secuencia de tiempo. Alternativamente se pueden gracar los residuos estandarizados, es decir, las u
bt entre la desviacin estndar de la regresin b2 :Los
valores de los residuos estandarizados sern nmeros sin unidad de medida, por
consiguiente, pueden ser comparados con los residuos estandarizados de otros
modelos.
Otra forma es gracar u
bt con respecto a u
bt 1 para indicar un esquema autoregresivo de orden 1 AR(1), y as observar algunos de los patrones sealados
anteriormente.
Example :
108

*Mtodo Grafcio
reg c i l h a
predict residuo, resid
predict residuo_est, rstandard
graph twoway (line residuo tiempo) ///
(line residuo_est tiempo),yline(0)
gen residuo_1=L.resid

-10

-5

10

sc residuo residuo_1, yline(0) xline(0)

1950

1960

1970

1980

tiempo
Residuals

Standardized residuals

Graf ica de los Re siduos a traves del tiempo


Est gura nos muestra un patrn de los residuos estimados u
bt similar al de
la grca tipo a), por lo tanto es muy probable la presencia de autocorrelacin.
En cambio, no parece suceder los mismo con los residuos estandarizados, por lo

109

-10

-5

Residuals
0

10

que se necesita hacer ms pruebas.

-10

-5

0
residuo_1

P loteo entre u
bt y u
bt

Se muestra una relacin positiva entre u


bt y u
bt
un proceso AR(1).

10

1 ;por

lo cual puede ocurrir

b). Prueba de las Rachas

Se dene una racha como una sucesin de smbolos + , y se expresa


la longuitud de la racha como el nmero de elementos de sta. Al examinas
el comportamiento de las rachas estrictamente aleatoria es posible derivar una
prueba de aleatoriedad de las rachas. Si existe muchas rachas, signica que los
residuos cambian de signo frecuentemente y con esto se indica una correlacin
negativa y si hay muy pocas rachas se puede sugerir autocorrelacin positiva.
Sea:
N
N1
N2
R

:
:
:
:

N umero
N umero
N umero
N umero

total de observaciones = N1 + N2
de s{mbolos + (residuos positivos)
de s{mbolos
(residuos negativos)
de Rachas

Bajo la hiptesis nula de que los resultados sucesivos de los residuos son independientes, el nmero de rachas est asintticamente distribuido normalmente
con:
M edia :
V arianza :

2N1 N2
+1
N
2N1 N2 (2N1 N2 N )
=
N 2 (N 1)

E(R) =
2
R

110

Si la hiptesis nula de aleatoriedad es sostenible, es de esperar que:


Pr[E(R)

1:96

E(R) + 1:96

R]

= 0:95

Es decir, la probabilidad es de 95% de que el intervalo incluya a R.


Example :
*Mtodo de Rachas
*Paso1.
//Generamos los signos + y gen signo="+" if residuo>0
replace signo="-" if residuo<0
*Paso2.
//Hacemos un listado de los signos +,
//y contamos con el comando count
list signo if signo=="+" ,sep(0)
count if signo=="+"
//Se obtiene N1=17 signos +, entonces hay
//N2=13 signos -. El nmero de rachas sera
//R=9 (cambios de + a -).

*Paso 3.
111

//Calculamos la media y varianza de R


display "E(R)="
display (2*17*13/30)+1
//E(R)=15.733333
display "Var(R)="
display 2*17*13*(2*17*13-30)/((30^2)*(30-1))
//Var(R)=6.9771648
*Paso 4
//Elaboramos los Intervalos
display "Lmite Inferior"
display 15.733333-1.96*(6.9771648^0.5)
//=10.556126
display "Lmte Superior"
display 15.733333+1.96*(6.9771648^0.5)
//=20.91054

*Paso 5
//Conclusin: El intervalo no contiene el Nmero de
//Rachas calculada, as que se rechaza la hiptesis
//Nula de que los residuos en la regresin son aleatorios
//al 95% de nivel de conanza. Es decir, los residuos
//muestran correlacin.
c) Prueba de Durbin Watson
El estadstico de Durbin y Watson se dene como:
Pt=n
(b
ut
u
bt 1 )2
d = t=2Pt=n 2
bt
t=1 u

donde d es la razn de la suma de las diferencias al cuadrado de residuos


sucesivos sobra la suma residual de cuadrados. Los supuestos que se basa esta
prueba son:
El modelo de regresin incluye el trmino de interseccin.
Las variables explicativas X son no estocsticas.
Los errores ut se generan mediante el esquema autoregresivo AR(1): ut =
ut 1 + vt :
112

El trmino de error ut est normalmente distribuido.


El modelo de regresin no incluye modelos rezagados de la variable dependiente como una de las variables explicativas.
La expresin anterior puede aproximarse a la siguiente relacin despues de
diversas simplicaciones y supuestos21 :
P
u
bu
b
Pt t2 1
2 (1 b)
d 2 1
u
bt
donde b es el coeciente de autocorrelacin muestral de primer orden.
Esta prueba puede entenderse con la ayuda del siguiente graco:

Estad{stico Durbin W atson


Donde dL y dU son los valores crticos de esta prueba. Las reglas de decisin
son las siguientes:
Hiptesis Nula
No hay Autocorrelacin Positiva
No hay Autocorrelacin Positiva
No hay Autocorrelacin Negativa
No hay Autocorrelacin Negativa
No hay Autocorrelacin Positiva y Negativa
2 1 El

supuesto que se realiza en este caso es que

iguales.

113

Decisin
rechazar
sn decisin
rechazar
sn decisin
no rechazar
P

u
b2t y

u
b2t

S cumple
0 < d < dL
dL < d < d U
4 dU < d < d L
4 dU < d < 4 dL
dU < d < 4 dU
son aproximadamente

STATA cuanta con el comando estat dwatson para realizar esta prueba
la cual nos muestra el valor del estadstico de Durbin Watson.
Example :
*Prueba de Durbin Watson
quietly reg c i l h a
estat dwatson
//Es estadstico d= 1.074914 y
//el valor crtico para n=30 y k=5 sera
//dL=1.071 y dU=1.0833. Por lo tanto,
//existe presencia de autocorrelacin
//positiva.

Pr ueba de Durbin W atson


Si en caso se incluye en el modelo de regresin valores rezagados de la variable dependiente, es necesario utilizar la Prueba h de Durbin, donde es posible
ejecutarlo en el STATA con el comando hdurbin.
e). Breusch Godlfrey
Esta prueba es muy general tal que permite:
Regresoras no estocsticas como valores rezagados de las variables explicativas y dependiente.
Esquemas autoregresivos de mayor orden.
Sea el siguiente modelo de regresin lineal a estimar;
yt =

1 X1

+ ::: +

k Xk +ut

donde alguna variable X puede ser la variable dependiente o explicativas


rezagadas. Se supone que el trmino de error ut sigue un esquema autoregresivo
de orden p, AR(p).
ut =

1 ut 1

+ ::: +

p ut p

+v

donde vt es un trmino de error de ruido con media cero y varianza constante


(ruido blanco). La hiptesis nula a probar es que:
114

H0 :

= ::: =

=0

No existe correlacin serial de ningn orden.


El procedimiento de la Prueba Breusch-Godfrey es como se menciona a continuacin:
1. Se estima el modelo de regresin original por OLS y se obtiene los residuos
u
bt .

2. Se regresiona ut con respecto a las variables a las variables explicativas y


los trminos de error estimados rezagados (ut 1 ; :::; ut p ) y obtngase el
valor del R2 .

3. Si el tamao de muestra es grande, B-G han demostrado que:


(n

p)R2

2
p

Una distribucin chi-cuadrado con p grados de libertad. Si este estadstico


calculado excede al valor crtico, entonces se rechaza la hiptesis nula, es decir,
no existe correlacin serial.
STATA tiene implementado esta prueba a travs del comando estat bgodfrey que resume los pasos anteriores. Por defecto este comando considera un
rezago en el trmino de error, pero puede ser modicado con la opcin lags(#)
donde se puede especicar el nmero (#) de rezagos.
Example :
*Prueba de Breusch-Godlfrey
quietly reg c i l h a
estat bgodfrey

115

Cap 5. Programacin en STATA


5.1 Macros Local y Global
Una macro en STATA es un string que tiene un valor y un nombre, la cual sirve
para reemplazar otros string. Esta macro puede contener cualquier combinacin
de caracteres alfanumricos y caracteres. Existen dos tipos de macros en STATA
conocidas como local y global. El contenido de la primera se dene con el
comando local y el segundo con el comando global.
Una macro global es accesible en los Do-le o a lo largo de una sesin en
STATA. Una macro local puede ser accedida solo entre una sesin interactiva o
un Do-le dado.

5.1.1 Macro Global


Estos son los ms simples macros y son adecuados para muchos propsitos. Para
acceder a este tipo de macro, ponemos el smbolo $ inmediatamente antes del
nombre de la macro. Por ejemplo, consideremos un regresin simple entre la
variable mpg sobre otros regresores, donde la macro global xlist se usa para
reemplazar la lista de regresores.
Example :
global xlist price weight
regress mpg $xlist

//El prejo $ es necesario

Las macros globales son usadas cuando se jan diferentes regresiones con las
mismas listas de regresores porque ellos aseguran que la lista de regresores son
las mismas en todo instante y hacen que sea fcil cambiar la lista de regresor.
Un cambio sencillo a la macro global hace que cambie los regresores en todo
instante.

5.1.2 Macro Local


Para acceder a esta macro, encerramos al nombre de la macro entre estas comillas especiales ( ), donde se ubican en la parte superior de su derecha del
teclado (el otro se ubica al costado del botn de la letra "p" y el primero smbolo se ubica en el botn del signo de interrogacin "?"). Como un ejemplo
de macro local, consideramos una regresin de la variable mpg sobre diferentes
regresores. Consideremos una macro local xlist.
Example 1 :

116

local xlist price weight


regress mpg xlist

//Las comillas especiales es necesario

Tambin podemos usar una macro para denir la variable dependiente. Por
ejemplo:
Example 2 :
local y mpg
regress y xlist
Note que y no es una variable que tiene N observaciones, sino que es un
string que reemplaza a mpg.
En general, las macros locales son especialmente usadas para programacin
en STATA. Entonces, por ejemplo podemos usar y y x como una notacin
genrica para la variable dependiente y las variables explicativas, haciendo los
cdigos fcil de leer. En cambio, una macro global es usada para programas
corrientes.

5.2 Comandos para Bucles


Los bucles proveen una forma de repetir el mismo comando muchas veces.
STATA tiene tres constructores de bucles: foreach, forvalues y while.
Para la ilustracin de estos comandos, lo usaremos para crear la suma de cuatro variables, donde cada variable se crea de una distribucin uniforme. Existe
muchas variaciones en la forma como uno puede realizar estos bucles.
Como sabemos, el comando generate se usa para crear variables. La funcin
runiform() provee un conjunto de valores que siguen una distribucin uniforme. Cuando estos nmeros aleatorios son generados. Debemos establecer un
valor especco como semilla con el comando set seed, tal que al correr varias
veces el programa o Do-le nos daran los mismos valores aleatorios. Tambin
indicaremos al STATA que solo trabajaremos con 100 observaciones, por lo cual
usaremos el comando set obs.
Example :
clear all
set obs 100
set seed 10101
117

gen
gen
gen
gen

x1var=runiform()
x2var=runiform()
x3var=runiform()
x4var=runiform()

*Nosostros deseamos la suma de las cuatro variables.


gen sum= x1var+ x2var+x3var+ x4var
summarize sum
A partir de esto presentamos diferentes formas para usar los bucles para
calcular una suma progresiva de estas variables.

5.2.1 El Comando foreach


Este comando construye bucles para cada uno de los item de una lista, donde la
lista puede ser nombre de variables (posiblemente dados en una macro) o una
lista de nmeros.
Comencemos por usar una lista de nombre de variables. En este caso la lista
es x1var, x2var, x3var y x4var. Como vimos, la ltima variable creada fue
sum, nosotros necesitaremos eliminar esta variable y crear otra que sea sum=0,
as que reemplazamos los valores de esta variable sum con ceros. Usaremos esta
misma idea para generar la suma de estas cuatro variable usando el comando
foreach.
Example :
*I Forma
replace sum=0
foreach var of varlist x1var x2var x3var x4var{
replace sum=sum + var
}
*II Forma
replace sum=0
global xvar x1var x2var x3var x4var
foreach var of varlist $xvar {
replace sum=sum + var
}
*III Forma
//Para esto se necesita que exista un orden entre
//desde variables x1var hasta x4var

118

replace sum=0
foreach var of varlist x1var-x4var {
replace sum=sum + var
}
El resultado es el mismo obtenido manualmente. La codicacin en este bucle es un ejemplo de una programacin, donde se coloca un corchete de apertura
"{" al nal de la primera lnea de comando y un corchete de cierre "}" al nal
del programa. En este bucle, nos referimos a cada variable en la lista de variable
llamada varlist a travs de la macro local llamada var, as que es necesario el
uso de las comillas especiales para invocar a esta macro local. El nombre de
la macro es opcional, pero la palabra varlist si es necesaria para indicarle al
STATA que est trabajando con una lista de variable. Otros posibles listas que
se podran usar es numlist, newlist, global o local22 .

5.2.2 El comando forvalue


El comando forvalues iter sobre valores consecutivos, En el siguiente cdigo,
nosotros usamos un ndice i para que se una macro local i.
Example :
replace sum=0
forvalues i=1/4 {
replace sum= sum + x ivar
}
summarize sum
Como vemos produce el mismo resultado.la eleccin del nombre i para la
macro local fue arbitrario. En este ejemplo, el incremento es en una unidad, pero
uno puede usar otros incrementos. Por ejemplo, podemos escribir forvalues
i=1(2)11, entonces el ndice va de 1 hasta 11 en incrementos de 2 unidades.

5.2.3 El comando while


El comando while continua ejerciendo la operacin ordenada hasta que una
condicin ya no sea cumplida. Este comando es utilizado cuando los comandos
foreach y forvalues no puedan ser utilizados. En el siguiente cdigo, la macro
local i se hace que inicie en el valor de 1 y luego aumenta hasta que i 6 4.
Example :

2 2 Para

ms detalle se recomienda ver help foreach.

119

replace sum=0
local i 1
while i<=4 {
replace sum= sum + xivar
local i= i+ 1
}
summ sum

5.3 Escalares y Matrices

Los escalares pueden almacenar nmeros o string, y las matrices pueden almacenar diferentes nmeros o string como un vector.

1.1

5.3.1 Escalar

Los comandos que nos permite analizar variable (describe, summarize, etc) dan
resultados como escalares numricos. Podemos ver los contenido de un escalar
usando el comando display, tambin podemos ver la lista de todos los escalares
creados a travs del comando scalar list. Por ejemplo, almacenamos el producto
de 3x2 como un escalar llamado a y luego mostramos su valor.
Example :

scalar a = 2*3
scalar b = "2 veces 3= "
display b a
scalar list
Otros de los usos que se le dan a los escalares se muestra en la seccin
posterior.

5.3.2 Matrices
STATA provee dos formas distintas para usar matrices, ambas almacenan tanto
nmeros o string en vectores. Una manera es a travs de los comandos de STATA
que tiene el prejo matrix. El otro modo es usando el lenguaje de programacin
que incluye el STATA en esta versin llamada MATA. El siguiente cdigo ilustra
la denicin de una matriz de tamao 2x3 n (con el comando matriz dene), la
lista de la matriz (matfrix list) y la extraccin como un escalar de un elemento
especco del elemento de una matriz.

120

Example :

matrix dene A = (1,2,3n4,5,6)


matrix list A
scalar a= A[2,3]
display a

5.4 Usando los Resultados de los Comandos de


STATA
Mucho de los anlisis ocasionan clculos posteriores despus de usar comandos
posteriores.

5.4.1 Usando los Resultados con el Comando r-class


Los comandos del STATA que analizan pero que no estiman parmetros son
comandos r-class. Todos los comandos r-class guardan su resultado en r().
Los contenidos de r() varan segn el comando y se pueden observar tipeando
return list. Como ejemplo, listamos los resultados almacenados despus de
usar un summarize:
Example :
sysuse auto.dta

summ mpg
return list
Hay ocho resultados almacenados separadamente escalares en el STATA
con los nombres r(n), r(sum_w), ..., r(sum). Otros resultados adicionales se
mostrarn si usamos la opcin detail.
El siguiente cdigo calcula y muestra el rango de la data.
Example :
summ mpg

121

scalar rango= r(max) - r(min)


display "Sample range =" range
scalar mpg_media=r(mean)
scalar lsit
Los resultados en r() desaparecen cuando otro comando r-class o e-class es
ejecutado. Podemos tambin guardar el valor como un escalar.

5.4.2 Usando los Resultados con el Comando e-class


Los comandos de estimacin se guardan como e-class (o clase de comando de estimacin), tal como regress. Los resultados son guardados en e(), los contenidos
se pueden ver tipeando ereturn list.
Example :
regress mpg price weight
ereturn list
Los resultados numricos en el anlisis de regresin se han guardado como
escalares, Por ejemplo podemos usar los resultados para calcular el valor de
R2 . La suma de cuadrados del modelo est guardado en e(mss) y la suma de
cuadrados de los residuos en e(rss).
Example :
*Calculando el R-squared
scalar r2=e(mss)/(e(rss)+e(mss))
display "r-squared = " r2
El resultado es el mismo que arrojo la regresin original, 0.6531.
Los resultados de los parmetros y varianza estn guardados como matrices.
Aqu presentamos mtodos para extraer escalares desde matrices y manipularlos. Especcamente, nosotros obtenemos el coeciente OLS del precio desde
la matriz e(b) de 1x3, el estimador de varianza desde la matriz e(V) de 3x3,
y entonces formamos el estadstico de t-student para testear la signicancia
individual del modelo para la variable price.
Example :
122

*Calculando el t-student para la variable price


matrix b_est=e(b)
scalar b_price=b_est[1,1]
matrix V_est=e(V)
scalar V_price=V_est[1,1]
scalar t_price=b_price/sqrt(V_price)
display " t-student para Ho: b_rpice=0 es " t_price
El resultado es el mismo que arrojo la regresin original, -0.57. Los resultados
en e() desaparecen cuando otro comando r-class o e-class es ejecutado. Sin
embargo, podemos guardar los resultados usando estimate store explicado en
el captulo anterior.

123

Cap 6. Bibliografa
[1]. Cameron A. & Trivedi P, (2009). "Microeconometrics using STATA"
[2]. Csar Alonso Borrego y Roco Snchez Mangas. "STATA Guia de utilizacin".
[3]. Curso de INFOPUC (2009)."STATA 10 para Economistas"
[4]. Curso de INFOPUC (2008)."STATA 8 para Economistas"
[5]. Grupo Iddea (2009). "Stata Basico-Intermedio"
[6]. Hamilton, L., (2006). "Statistics With STATA"
[7]. Mitchell M., (2004), A Visual Guide to Stata Graphics.
[8]. Sergi Jimnez-Martn, (2001) "BREVE CURSO DE INTRODUCCIN A
LA PROGRAMACIN EN STATA (6.0)"
[9]. Sophia Rabe-Hesketh & Brian Everitt, (2004). "A Handbook of Statistical
Analyses using Stata"

124

También podría gustarte