Clase de Stata Junior
-
Upload
ronald-cueva-ala -
Category
Documents
-
view
79 -
download
5
description
Transcript of Clase de Stata Junior
Universidad Nacional de CallaoEscuela Profesional de Economıa
Centro de Investigacion
Documento de apoyo para lassesiones aplicativas del curso de
Econometrıa II
Profesor del Curso : MSc. Carlos I. Palomares
Manejo de Datos y Analisis Econometrico con STATA
Junior Urtecho [email protected]
Bellavista - Callao2011 - A
Indice general
1. Entorno de Stata 41.1. Elementos Basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1.1. Ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.1.2. Tipos de Archivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.1.3. Recursos y Documentos de ayuda . . . . . . . . . . . . . . . . . . . . . . . 6
1.2. Sintaxis de Comandos y Expresiones Logicas . . . . . . . . . . . . . . . . . . . . 71.3. Organizando un Proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1. Memoria de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3.2. Fijando Directorio (path) . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.3.3. Do-file and Log-file . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4. Aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4.1. Mi Primer Do . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.4.2. Mi Primer Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2. Gestion de Datos 102.1. Iniciando Stata . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2. Importando Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.1. Desde Excel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.2.2. Stat-Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.3. Reconociendo Base de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.4. Explorando Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4.1. Medidas de Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.4.2. Tablas y Estadısticos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.5. Generando Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122.6. Etiquetado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132.7. Append, Merge y Collapse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.7.1. Append . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.7.2. Merge . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.7.3. Collapse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.8. Aplicacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
3. Analisis de Regresion Linal 203.1. Un primer Analisis de Regresion . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.2. Examinando la Base de Datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.3. Regresion Lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.3.1. Prueba de Hipotesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.3.2. Correlacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.3.3. Distribucion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4. Diagnostico de la Regresion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.4.1. Datos Originales e Influyentes . . . . . . . . . . . . . . . . . . . . . . . . . 24
2
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
3.4.2. Comprobando la Normalidad de los Residuos . . . . . . . . . . . . . . . . 283.4.3. Comprobando Homocedasticidad de los Residuos . . . . . . . . . . . . . . 283.4.4. Comprobando Colinealidad . . . . . . . . . . . . . . . . . . . . . . . . . . 293.4.5. Errores de Especificacion . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.4.6. Independencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Referencias 36
Universidad Nacional del CallaoFacultad de Ciencias Economicas
3 Junior Urtecho [email protected]
Capıtulo 1
Entorno de Stata
1.1. Elementos Basicos
1.1.1. Ventanas
El programa presenta las siguientes ventanas:
Figura 1.1: Stata SE 11.1
Stata Results: Situada en la parte superior derecha, presenta los resultados de cada orden.
Stata Command: Se encuentra en la parte inferior derecha, es ahı donde se digitan todoslos comandos.
Review: Situada en la parte superior izquierda, es la bitacora de los comandos.
Variables: Situada en la parte inferior izquierda, es donde se ubica la base de datos con laque se esta trabajando.
Ademas existen otras ventanas como:
4
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Viewer Windows (VW): Sirve para ver los resultados de las busquedas con help y search
Figura 1.2: Viewer Windows
Do File Editor: Es el entorno de programacion agrupada.
Figura 1.3: Do File
Data Window: Esta ventana tiene una apariencia similar a un libro Excel, es aquı dondese introducen y editan los datos.
Figura 1.4: Data Window
1.1.2. Tipos de Archivos
.dta: Identifica las bases de datos.
Universidad Nacional del CallaoFacultad de Ciencias Economicas
5 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
.do: Identifica los do-file.
.log: Es la extension que almacena las salidas en la ventana Stata Result de la figura 1.1,tambien llamado bitacora.
.gph: Almacena los graficos creados con stata.
1.1.3. Recursos y Documentos de ayuda
Manueales de Stata:Stata posee (como cualquier soft) una guıa de usuario muy util, podremos revisar GettingStarted with Stata que es un estupendo manual para nuevos usuarios. A la que pudenacceder por: Help → PDF documentation.
Recursos Adicionales:El Stata Journal (SJ) y su predecesor, el Stata Technical Bulletin (STB), presenta ejem-plos y codigos que van mas alla de los que vienen con la intalacion del Stata. SJ habilitaartıculos con mas de tres anos de publicacion que estan disponibles en la web, todos losartıculos STB estan disponibles online desde el sitio web de Stata. El sitio web de STATAtiene una gran cantidad de informacion, esto incluye un resumen de lo que Stata hace.
Un buen lugar para comenzar es http://www.stata.com/support/.En particular, consulte la respuestas a las preguntas mas frecuentes (FAQ). La Web de laUniversidad de California - Los Angeles (UCLA) http://www.ats.ucla.edu/STAT/stata/proporciona muchos tutoriales Stata.
Comando Help:Esta es una de las grandes ventajas que posee Stata, ya que nos permitira obtener infor-macion inmediata de los comandos que vamos a utilizar, y es mucho mas util si conocemosel nombre el comando por ejemplo:
. help table
. help function
. help help
Los comandos search, findit:Son comandos de busqueda que no requieren el conocimiento previo del nombre del coman-do, por ejemplo el comando search es util si no conocemos el nombre del comando de statay deseamos buscar informacion de las direfentes formas en las que se puede utilizar uncomando o metodo. Por default encontraremos informacion de sitios oficiales, que vienenya instalados con el programa.
En cambio el comando findit busca informacion tanto en la memoria de instalacion del pro-grama como en internet, lo cual nos proporciona una gran herramienta de actualizacionpersonalizada, por lo que podremos descargar e instalar comandos creados por otros usua-rios. Ejemplos:
. findit ols
. search mean
Universidad Nacional del CallaoFacultad de Ciencias Economicas
6 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
1.2. Sintaxis de Comandos y Expresiones Logicas
Describe la estructura basica de los comandos del lenguaje de programacion de Stata.
. help language
Syntax
With few exceptions, the basic language syntax is
[prefix :] command [varlist] [=exp] [if] [in] [weight]
[using filename] [, options]
Utilizando el comando help podemos obtener mayor informacion de cada uno de sus compo-nentes.
see language element description
------------------------------------------------------------------
help prefix prefix : prefix command
help command command Stata command
help varlist varlist variable list
help exp =exp expression
help if if if exp qualifier
help in in in range qualifier
help weight weight weight
help using using filename using filename modifier
help options options options
------------------------------------------------------------------
Todo lo que aparece entre corchetes es opcional, tanto el comando in como el comando if nospermiten seleccionar una submuestra de nuestra base de datos. Con esto podemos delimitar eltamano de la muestra en un rango y/o tambien podemos seleccionar los datos que satisfacenciertas condiciones, para ello podemos utilizar expresiones logicas como:
Figura 1.5: Expresiones Logicas
Universidad Nacional del CallaoFacultad de Ciencias Economicas
7 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
1.3. Organizando un Proyecto
1.3.1. Memoria de trabajo
El tamano de la memoria con la que se trabaja es de vital importancia, habran situaciones enque stata no les permita abrir una base de datos debido a que el uso de memoria es insuficiente,para modificar el tamano de memoria utilizamos el comando set mem seguido por la capacidada asignar1. ejm:
. set mem 100m
1.3.2. Fijando Directorio (path)
Esta herramienta nos permite fijar nuestra carpeta de trabajo2, es en ella donde almacenaremostodos nuestros archivos .dta, .log, .do, etc.
. cd "D:\Junior\Desktop\Econometria II""
1.3.3. Do-file and Log-file
Do-File:
Es una serie de comandos a ser ejecutado de manera conjunta y de manera ordenada. Sirve comoregistro de lo que se hizo o ejecuto y a su vez ir haciendo aclaraciones de lo que se esta haciendo.
Abriendo un Do:
La ventana Do-dile Editor (ver figura 1.3) se abre con la siguiente ruta:
Windows → Do-file Editor → New Do-file Editor-
La forma mas sencilla es utilizar Ctrl+8
Running Do-file:Estos archivos pueden ser ejecutados directamente desde la ventana del Do-File Editor oingresando en la barra de comandos el comando do seguido por la ruta donde se encuentrael archivo, ejemplo:
do "D:\Junior\Desktop\EconometriaII\mi primer do"
Otra forma es utilizar Ctrl+D. Si solo se desea correr algunas lıneas, primero las selec-cionamos y presionamos Ctrl+D.
Log-File:
Los resultados que salen en la ventana Stata Results, puden ser almacenadas en un archivo.log y se guardan en formato SMCL o ASCII.
1Una regla practica dice que se debe fijar como memoria un 50 % adicional al tamano de la bade de datos atrabajar.
2Nota: Hay muchos comandos en Stata que requieren las especificacion de un path. Por ello es necesario saberque cuando el nombre de una carpeta o archivo incluido en el path lleva espacio entre caracteres, el path debe irentre comillas.
Universidad Nacional del CallaoFacultad de Ciencias Economicas
8 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Para abrir un log file:
log using autolog using auto, replacelog using auto.loglog offlog onlog close
1.4. Aplicacion
1.4.1. Mi Primer Do
*Mi primer DO*
* Una forma de pone comentarios en una sola lınea
/* para poner comentarios en
varias filas */
clear
cd "D:\Junior\Desktop\Econometria II" *Fijando la carpeta de trabajo (path)
set mem 100m *Fijando memoria
use sumaria-2009 *Abriendo una base de datos
describe
lookfor gashog2d
sum gashog2d
1.4.2. Mi Primer Log
log using ejemplo,text
use sumaria_2008
log close
log using ejemplo,text append
tab dominio
clear
log close
Universidad Nacional del CallaoFacultad de Ciencias Economicas
9 Junior Urtecho [email protected]
Capıtulo 2
Gestion de Datos
2.1. Iniciando Stata
Abriendo una base de datos
Supongamos que tenemos una base de datos .dta de nombre sumaria-2009 y ruta:
D:\Junior\Desktop\EconometriaII\
Para abrir la base de datos desde Stata:
use "D:\Junior\Desktop\Econometria II\sumaria-2009.dta"
Antes de usar este comando nos tenemos que fijar si hay otra base abierta, de lo contrario no seejecutara. Podemos usar clear antes de use para limpiar la memoria o en todo caso al final decomando agregar ,clear.
Seleccionando una submuestra
Si solo queremos ver las familias que con mas de 8 miembros:
use "D:\Junior\Desktop\Econometria II\sumaria-2009" if mieperho>8
Si solo queremos las primeras 100 observaciones
use "D:\Junior\Desktop\Econometria II\sumaria-2009" in 1/100
Una vez ya fijado el path podemos abrilo de la siguiente forma:
use sumaria-2009
Si solo queremos trabajar con un subconjunto de variables: conglome vivienda hogar ubigeo
use conglome vivienda hogar ubigeo using sumaria-2009
Esta sentencia no abrira completa nuestra base de datos, solo abrira las variables conglomevivienda hogar ubigeo.
Tambien se pueden abrir base de datos directamente desde internet, por ejemplo:
use http://wps.aw.com/wps/media/objects/284/291498/caschool.dta
10
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
2.2. Importando Datos
2.2.1. Desde Excel
Para importar datos desde el Excel podemos proceder a copiar los datos de la hoja Excel ypegarlos en el Data Editor que se abre con el comando edit.
Otra forma es grabar el archivo de Excel en el formato Texto (delimitado por tabulaciones) (quees un archivo ASCII creado por una spreadsheet) e ir a Stata y llamarlo como:
insheet using "D:\Junior\Desktop\Econometria II\muestra.txt" ,tab
2.2.2. Stat-Transfer
Ingresar a Microdatos en la pagina del INEI, bajar la base sumaria-2009. Transferir la basesumaria de SPSS (.sav) a STATA(.dta)
2.3. Reconociendo Base de Datos
Comandos iniciales para hacer el reconocimiento previo de nuestra base de datos1.
describe
codebook conglome
lookfor gashog2d
list gashog2d in 110
list gashog2d in 110
list gashog2d in 51
sort conglome
list conglome
gsort- conglome
list conglome
2.4. Explorando Datos
2.4.1. Medidas de Resumen
inspect gashog2d
summarize gashog2d
summarize gashog2d, detail
summarize gashog2d if gashog2d>10000
bys dominio: summarize gashog2d if gashog2d>1000
2.4.2. Tablas y Estadısticos
tabulate dominio
tabulate dominio ,sum(gashog2d)
tab dominio if gashog2d>6000
tab dominio pobreza
tab dominio pobreza, colum
tab dominio pobreza, row
1Utilizando la base de datos sumaria-2009
Universidad Nacional del CallaoFacultad de Ciencias Economicas
11 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
tab dominio pobreza, cell
tabstat gashog2d, statistic(mean median cv sd min max skewness kurtosis)
tabstat gashog2d, statistic(mean median) by(dominio)
histogram gashog2d
histogram gashog2d, normal
Estadısticos que se pueden obtener con la opcion statistic
mean media aritmetica
count numero de valores no perdidas
n numero de casos
sum suma de valores
max maximo valor
min mınimo valor
range rango = maximo - mınimo
sd desviacion estandar
var varianza
cv coeficiente de variacion (var/mean^2)
semean error estandar de la media igual a (sd/sqrt(n))
skewness ındice de sesgo, respecto a la normal con parametros mean y var.
kurtosis kurtosis, respecto a la normal con parametros mean y var
median mediana (muestra el percentile 50)
p25 percentil 25
p50 percentil 50 (mediana)
p75 percentil 75
2.5. Generando Variables
Trabajemos con la base de datos auto, y con la variable length (longitud del auto en pulgadas)
use auto, clear
summarize length
generate length_feet = length / 12
generate length_feet = length / 12
replace length_feet = length / 12
summarize length lenght_feet
generate length2 = length^2
summarize length2
generate loglen = log(length)
summarize loglen
summarize length
generate zlength = (length - 187.93) / 22.27
summarize zlength
Observemos la variable mpg (millaje por galon)
tabulate mpg
De esta manera no nos es muy facil el analisis de esta variable, podrıamos mejorar su presentacionsi la clasificaramos en intervalos.
Universidad Nacional del CallaoFacultad de Ciencias Economicas
12 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
generate mpg1 = .
replace mpg1 = 1 if (mpg <= 18)
replace mpg1 = 2 if (mpg >= 19) & (mpg <=23)
replace mpg1 = 3 if (mpg >= 24) & (mpg <.)
tabulate mpg mpg1
Si queremos crear una variable que tenga el valor de 1 para los autos con un consumo deconbustible mayor a 20 galones por milla y 0 en caso contrario.
generate D = .
replace D = 1 if mpg > 20
replace D = 0 if mpg <= 20
Una forma mas eficiente de realizar la misma tarea es:
generate D1 = mpg > 20
list D D1
Veamos un ejemplo con categorıas, ahora deseamos crear una variable que nos muestre el millajede los carros respecto a su origen, esta tomara el valor de 0 para valores por debajo de la mediade mpg en el grupo domestico y extranjero y 1 para valores por encima de la media de mpg enlos grupos domestico y extranjero.
sort foreign
by foreign: summarize mpg, detail
generate mpg2 = mpg
recode mpg2 min/18=0 19/max=1 if foreign==0
recode mpg2 min/24=0 25/max=1 if foreign==1
by foreign: tabulate mpg mpg2
Tambien podemos usar una extension del commando generate, egen nos permitira crear expre-siones mas complejas, tales como medias, desviaciones estandar, maximos, mınimos, etc.
egen minimo_p=min(price)
egen median_p=median(price)
egen std_p=std(price), mean(0) std(1)
2.6. Etiquetado
Es una herramienta muy util para la identificacion de base de datos o de variables, que permiteun trabajo ordenado.
use auto.dta
describe
label data "Este archivo contiene datos de autos para el a~no 1978"
describe
label variable rep78 "Record de reparacion en 1978"
label variable price "Precio del carro en 1958"
label variable mpg "Millas por galon para el carro"
label variable foreign "Origen del carro, extranjero o domestico"
Universidad Nacional del CallaoFacultad de Ciencias Economicas
13 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
describe
label define foreignl 0 "domestico" 1 "extranjero"
label values foreign foreignl
describe
table foreign
Ejercicio:Usando la Base de Datos Iraninos
clear
use iraninos.dta
set more off
label define sexow 0 "mujer"
label define sexow 1 "hombre", add
describe
browse
label values sexo sexow
describe
browse
label drop sexow
label define getareow 0 "prematuro"
label define getareow 1 "rec.nac.", add
label define getareow 2 "lactante", add
label define getareow 3 "escolares", add
label values getareo getareow
label define oliguriaw 0 "no oliguria"
label define oliguriaw 1 "oliguria", add
label values oliguria oliguriaw
label define congenitow 0 "no congenito"
label define congenitow 1 "congenito", add
label values congenito congenitow
label define sepsisw 0 "no sepsis"
label define sepsisw 1 "sepsis", add
label values sepsis sepsisw
label define tipodaow 0 "asfixia neonat"
label define tipodaow 1 "nta", add
label define tipodaow 2 "nti", add
label define tipodaow 3 "nefro tox", add
label values tipodao tipodaow
label define finalw 0 "vivo"
label define finalw 1 "muerto", add
label values final finalw
Universidad Nacional del CallaoFacultad de Ciencias Economicas
14 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
2.7. Append, Merge y Collapse
El comando append y merge nos ayudara a unir bases de datos integrandolas en una sola.Append, pegara hacia abajo o verticalmente y Merge, pegara hacia el costado o de forma hori-zontal.
2.7.1. Append
Vamos a empezar observando cada una de las bases de datos que tenemos, veamos la figura 2.1.
clear
use base1, clear
list
use base2, clear
list
use base3, clear
list
use base4, clear
list
Figura 2.1: Base de Datos
Empecemos nuestra tarea en Stata,Podemos observar que la base de datos Base1 tiene los mismos campos (columnas) que la basede datos Base2, pero diferentes filas, seria util, unir ambas bases. Abramos entonces, la base dedatos Base1 y peguemosla con la base de datos Base2, una union vertical
use base1.dta, clear
list
append using base2
list
save base12.dta, replace
list
Hagamos lo mismo con las bases de datos Base3 y Base4 y observemos los resultados:
use base3.dta, clear
list
append using base4
list
save base34.dta, replace
list
Universidad Nacional del CallaoFacultad de Ciencias Economicas
15 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Por que la variable la variable sexo se anadio 2 veces como columna y por que no se unio en unasola columna?
use base3.dta, clear
list
rename Sexo sexo
list
save base03.dta, replace
use base03.dta, clear
list
append using base4
list
save base034.dta, replace
2.7.2. Merge
Figura 2.2: Merge: Idea Basica
Ahora si resulto bien la union vertical. Veamos la base12 que tenıamos antes. Ahora nuestrointeres es fusionar ambas bases de datos de manera horizontal, para ello, primero debemosordenar ambas bases segun la variable con la que vamos a fusionar (la variable comun).
use base034.dta, clear
list
sort nombre
list
save base034s.dta, replace
use base12.dta, clear
list
sort nombre
list
save base12s.dta, replace
Ya tenemos las 2 bases de datos ordenadas, ahora vamos a fusionarlas.
clear
use base12s.dta, clear
list
Universidad Nacional del CallaoFacultad de Ciencias Economicas
16 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
merge nombre using base034s.dta
list
save basetotal.dta, replace
2.7.3. Collapse
El comando collapse sirve para convertir una base de datos que contiene variables para diversasunidades de estudio, en una base de datos que contiene estadısticos de dichas variables (medias,medianas, sumas etc). Permite obtener estadısticos para unidades mas grandes (en un sentidojerarquico), como por ejemplo, pasar de datos por individuo a datos por hogar, de datos pordistritos a datos por provincia (agregacion).
En el comando se especifican aquellas variables que se colapsan y las condiciones que se imponenpara dicha transformacion. Algunas variables pueden ser colapsadas segun su suma, otras segunsu media, etc.
Aquellas variables que no se especifican desaparecen automaticamente de la base de datos. Estecomando crea una nueva base de datos y cierra la base de partida. Si deseamos quedarnos conesta base debemos grabarla.
Figura 2.3: Collapse: Idea Basica
use kids, clear
list
collapse age
list
use kids, clear
collapse age, by(famid)
list
use kids, clear
collapse(mean) avgage=age, by(famid)
list
use kids, clear
collapse (mean) avgage=age avgwt=wt, by(famid)
list
use kids, clear
Universidad Nacional del CallaoFacultad de Ciencias Economicas
17 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
collapse (mean) avgage=age avgwt=wt (count) numkids=birth, by(famid)
list
use kids, clear
tabulate sex, generate(sexdum)
list famid sex sexdum1 sexdum2
collapse (count) numkids=birth (sum) girls=sexdum1 boys=sexdum2, by(famid)
list famid boys girls numkids
2.8. Aplicacion
Utilizando el do-file merge
*EJEMPLO DE APLICACION.
***********************
**MERGE
/*1. Se abre la base de donde va a importar variables a
nuestra base master y se ordena segun los identificadores..*/
clear
cd "D:\Junior\Desktop\Econometria II"
use enaho01-2009-100.dta
sort conglome vivienda hogar
save, replace
/*2. Se abre la base master, se ordena segun los
identificadores y se aplica el merge.*/
use sumaria-2009.dta
sort conglome vivienda hogar
save, replace
merge conglome vivienda hogar using enaho01-2009-100.dta
ta _merge
**COLLAPSE
*PARTE 1
* Cambie el directorio de trabajo
cd "D:\Junior\Desktop\Econometria II"
* "Importe" los datos del archivo ingreso.xlsx
* Grabe la informacion:
save ejemplo_collapse, replace
Universidad Nacional del CallaoFacultad de Ciencias Economicas
18 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
*PARTE 2
preserve
collapse (sum) ingreso,by(id_hogar)
save collapse_suma_ingresos,replace
restore
*PARTE 3
preserve
collapse (mean) ingreso,by(id_hogar)
save collapse_media_ingresos,replace
restore
*PARTE 4
use collapse_suma_ingresos,clear
brow
*PARTE 5
use collapse_media_ingresos,clear
brow
*PARTE 6: SUMA DE INGRESOS Y NUMERO DE PERSONAS EN CADA HOGAR
use ejemplo_collapse, clear
collapse (sum) ingreso (count) id_persona,by(id_hogar)
save collapse_suma_contador_ingresos,replace
br
Universidad Nacional del CallaoFacultad de Ciencias Economicas
19 Junior Urtecho [email protected]
Capıtulo 3
Analisis de Regresion Linal
En este capıtulo se trataran temas de regresion simple y multiple, ası como las tareas de apoyoque son importantes en la preparacion para analizar sus datos, por ejemplo, la comprobacionde datos, familiarizandose con su archivo de datos, y examinar la distribucion de las variables.Vamos a ilustrar los conceptos basicos de la regresion simple y multiple y demostrar la impor-tancia de la inspeccion, comprobacion y verificacion de sus datos antes de aceptar los resultadosde su analisis. En general, esperamos demostrar que los resultados de su analisis de regresionpuede ser enganoso sin mas de sondeo de los datos, que podrıan revelar las relaciones que unanalisis informal puede pasar por alto.
En este capıtulo, y en los capıtulos siguientes, vamos a utilizar un archivo de datos que fue creadopor un muestreo aleatorio de 400 escuelas primarias del Departamento de Educacion de Cali-fornia API 2000 conjunto de datos. Este archivo de datos contiene una medida del rendimientoacademico, ası como otros atributos de las escuelas primarias, como por ejemplo, tamano de lasclases, la matriculacion, la pobreza, etc.
Puede acceder a este archivo de datos a traves de la web de Stata con el uso de comandos comose muestra a continuacion1:
use http://www.ats.ucla.edu/stat/stata/webbooks/reg/elemapi
Una vez que haya cargado el archivo, es probable que desee guardar una copia del mismo en elequipo (por lo que no es necesario cargarlode la web cada vez que deseamos usarla). Digamosque usted esta usando Windows y desea almacenar el archivo en una carpeta llamada
"D:\Junior\Desktop\Econometria II".
En primer lugar, usted puede guardar este archivo dentro de la carpeta con el comando mkdir.
mkdir "D:\Junior\Desktop\Econometria II"
Y a continuacion, si guarda el archivo en
"D:\Junior\Desktop\Econometria II"
. Vamos a guardar el archivo como elemapi.
save elemapi
A partir de ahora podemos abrir el archivo de la forma tradicional usando el comando use.
1Nota: No escriba el punto inicial en el comando - el punto es una convencion para indicar que la declaraciones un comando de Stata.
20
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
3.1. Un primer Analisis de Regresion
Realizado un analisis de regresion utilizando las variables api00 , acsk3 , meals y full. Estosmiden el rendimiento academico de la escuela ( api00 ), el tamano promedio de clase de kinder-garten al 3er grado ( acsk3 ), el porcentaje de estudiantes que reciben comidas gratis ( meals )- que es un indicador de la pobreza, y el porcentaje de profesores que han la ensenanza de cre-denciales completas ( full ). Esperamos que la mejora de rendimiento academico se asocia con eltamano de clase baja, menos los estudiantes que reciben comidas gratis, y un mayor porcentajede docentes que la ensenanza de credenciales completas. A continuacion, se muestra el comandode Stata para probar este modelo de regresion seguido de la salida de Stata.
regress api00 acs_k3 meals full
Source | SS df MS Number of obs = 313
-------------+------------------------------ F( 3, 309) = 213.41
Model | 2634884.26 3 878294.754 Prob > F = 0.0000
Residual | 1271713.21 309 4115.57673 R-squared = 0.6745
-------------+------------------------------ Adj R-squared = 0.6713
Total | 3906597.47 312 12521.1457 Root MSE = 64.153
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
acs_k3 | -2.681508 1.393991 -1.92 0.055 -5.424424 .0614073
meals | -3.702419 .1540256 -24.04 0.000 -4.005491 -3.399348
full | .1086104 .090719 1.20 0.232 -.0698947 .2871154
_cons | 906.7392 28.26505 32.08 0.000 851.1228 962.3555
------------------------------------------------------------------------------
3.2. Examinando la Base de Datos
describe
list api00 acs_k3 meals full in 1/10
codebook api00 acs_k3 meals full yr_rnd
summarize api00 acs_k3 meals full
summarize acs_k3, detail
tabulate acs_k3
list snum dnum acs_k3 if acs_k3 < 0
list dnum snum api00 acs_k3 meals full if dnum == 140
histogram acs_k3
graph box acs_k3
tabulate dnum if full <= 1
3.3. Regresion Lineal
regress api00 ell meals yr_rnd mobility acs_k3 acs_46 full emer enroll
Source | SS df MS Number of obs = 395
-------------+------------------------------ F( 9, 385) = 232.41
Model | 6740702.01 9 748966.89 Prob > F = 0.0000
Residual | 1240707.78 385 3222.61761 R-squared = 0.8446
Universidad Nacional del CallaoFacultad de Ciencias Economicas
21 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
-------------+------------------------------ Adj R-squared = 0.8409
Total | 7981409.79 394 20257.3852 Root MSE = 56.768
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| Beta
-------------+----------------------------------------------------------------
ell | -.8600707 .2106317 -4.08 0.000 -.1495771
meals | -2.948216 .1703452 -17.31 0.000 -.6607003
yr_rnd | -19.88875 9.258442 -2.15 0.032 -.0591404
mobility | -1.301352 .4362053 -2.98 0.003 -.0686382
acs_k3 | 1.3187 2.252683 0.59 0.559 .0127287
acs_46 | 2.032456 .7983213 2.55 0.011 .0549752
full | .609715 .4758205 1.28 0.201 .0637969
emer | -.7066192 .6054086 -1.17 0.244 -.0580132
enroll | -.012164 .0167921 -0.72 0.469 -.0193554
_cons | 778.8305 61.68663 12.63 0.000 .
------------------------------------------------------------------------------
listcoef
regress (N=395): Unstandardized and Standardized Estimates
Observed SD: 142.32844
SD of Error: 56.768104
---------------------------------------------------------------------------
api00 | b t P>|t| bStdX bStdY bStdXY SDofX
---------+-----------------------------------------------------------------
ell | -0.86007 -4.083 0.000 -21.2891 -0.0060 -0.1496 24.7527
meals | -2.94822 -17.307 0.000 -94.0364 -0.0207 -0.6607 31.8960
yr_rnd | -19.88875 -2.148 0.032 -8.4174 -0.1397 -0.0591 0.4232
mobility | -1.30135 -2.983 0.003 -9.7692 -0.0091 -0.0686 7.5069
acs_k3 | 1.31870 0.585 0.559 1.8117 0.0093 0.0127 1.3738
acs_46 | 2.03246 2.546 0.011 7.8245 0.0143 0.0550 3.8498
full | 0.60972 1.281 0.201 9.0801 0.0043 0.0638 14.8924
emer | -0.70662 -1.167 0.244 -8.2569 -0.0050 -0.0580 11.6851
enroll | -0.01216 -0.724 0.469 -2.7548 -0.0001 -0.0194 226.4732
3.3.1. Prueba de Hipotesis
Prueba individual
test ell==0
( 1) ell = 0.0
F( 1, 385) = 16.67
Prob > F = 0.0001
Prueba Conjunta
test acs_k3 acs_46
Universidad Nacional del CallaoFacultad de Ciencias Economicas
22 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
( 1) acs_k3 = 0.0
( 2) acs_46 = 0.0
F( 2, 385) = 3.95
Prob > F = 0.0200
3.3.2. Correlacion
correlate api00 ell meals yr_rnd mobility acs_k3 acs_46 full emer enroll
(obs=395)
| api00 ell meals yr_rnd mobility acs_k3 acs_46
-------------+---------------------------------------------------------------
api00 | 1.0000
ell | -0.7655 1.0000
meals | -0.9002 0.7711 1.0000
yr_rnd | -0.4831 0.5104 0.4247 1.0000
mobility | -0.2106 -0.0149 0.2207 0.0321 1.0000
acs_k3 | 0.1712 -0.0553 -0.1888 0.0222 0.0397 1.0000
acs_46 | 0.2340 -0.1743 -0.2137 -0.0419 0.1280 0.2708 1.0000
full | 0.5759 -0.4867 -0.5285 -0.4045 0.0235 0.1611 0.1212
emer | -0.5902 0.4824 0.5402 0.4401 0.0612 -0.1111 -0.1283
enroll | -0.3221 0.4149 0.2426 0.5920 0.1007 0.1084 0.0281
| full emer enroll
-------------+---------------------------
full | 1.0000
emer | -0.9059 1.0000
enroll | -0.3384 0.3417 1.0000
3.3.3. Distribucion
histogram enroll
histogram enroll, normal bin(20)
histogram enroll, normal bin(20) xlabel(0(100)1600)
kdensity enroll, normal
graph box enroll
symplot enroll
qnorm api00
pnorm enroll
ladder enroll
gladder enroll
generate lenroll = log(enroll)
hist lenroll, normal
Universidad Nacional del CallaoFacultad de Ciencias Economicas
23 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
3.4. Diagnostico de la Regresion
En la seccion anterior, hemos aprendido como hacer la regresion lineal ordinaria con Stata, con-cluyendo con los metodos de examen de la distribucion de nuestras variables. Sin verificar quesus datos han cumplido con los supuestos subyacentes el modelo de regresion, los resultadospueden ser enganosos. En este capıtulo se estudiara como se puede utilizar Stata para compro-bar de que tan bien los datos cumplen los supuestos de regresion por mınimos cuadrados. Enparticular, vamos a considerar los siguientes supuestos.
Linealidad - las relaciones entre los predictores y la variable de resultado debe ser lineal
La normalidad - los errores deben tener una distribucion normal - tecnicamente la normal-idad es necesario solo para las pruebas de hipotesis sea valida
Estimacion de los coeficientes solo requiere que los errores sean de forma identica e inde-pendientemente distribuidos
La homogeneidad de varianza (homocedasticidad) - la varianza del error debe ser constante
Independencia - los errores asociados a una observacion no estan correlacionados con loserrores de cualquier otra observacion
Los errores en las variables - variables de prediccion se miden sin error
las especificaciones del modelo - el modelo debe estar debidamente especificado (incluyendotodas las variables relevantes, y excluyendo las variables irrelevantes)
Ademas, hay cuestiones que pueden surgir durante el analisis que, aunque estrictamente hablan-do no son supuestos de la regresion, no dejan de ser, de gran preocupacion para los analistas dedatos.
observaciones individuales que ejercen una influencia indebida sobre los coeficientes - In-fluencia
Colinealidad - predictores que estan muy alineados, es decir, una relacion lineal, puedecausar problemas en la estimacion de los coeficientes de regresion.
Muchos metodos graficos y analisis numericos se han desarrollado a lo largo de los anos para el di-agnostico de regresion. Stata tiene muchos de estos metodos integrados, y otros estan disponiblesque se pueden descargar a traves de Internet. En particular, Nicholas J. Cox (Universidad deDurham) ha producido una coleccion de comandos de la comodidad que se puede descargar deSSC (ssc install commandname). Estos comandos incluyen indexplot, rvfplot2, rdplot, qfr-plot and ovfplot. En este capıtulo, vamos a explorar estos metodos y mostrar como verificarlos supuestos de regresion y detectar posibles problemas usando Stata.
3.4.1. Datos Originales e Influyentes
Una unica observacion que es sustancialmente diferente de todas las otras observaciones puedehacer una gran diferencia en los resultados de su analisis de regresion. Si una unica observacion(o pequeno grupo de observaciones) cambia sustancialmente los resultados, usted quiere saberacerca de esto y seguir investigando. Hay tres formas de que una observacion puede ser inusual.
Universidad Nacional del CallaoFacultad de Ciencias Economicas
24 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Outliers: En la regresion lineal, un valor atıpico es una observacion con grandes residual.En otras palabras, es una observacion cuyo valor de la variable dependiente es inusualdebido a su valores en las variables predictoras. Un valor atıpico puede indicar una par-ticularidad de la muestra o puede indicar un error de entrada de datos o cualquier otroproblema.
Apalancamiento: Una observacion con un valor extremo en una variable explicativa sellama un punto con un alto apalancamiento. El apalancamiento es una medida de hastaque punto una variable independiente se desvıa de su media. Estos puntos de influenciapuede tener un efecto en la estimacion de los coeficientes de regresion.
Influencia: Una observacion se dice que es influyente, si la eliminacion de la observacioncambia sustancialmente la estimacion de los coeficientes. La influencia se puede considerarcomo el producto de apalancamiento y outlierness.
¿Como podemos identificar estos tres tipos de observaciones? los Veamos a un conjunto de datosde ejemplo llamada crime . Este conjunto de datos aparece en Metodos Estadısticos para lasCiencias Sociales, Tercera Edicion de Alan Agresti y Barbara Finlay (Prentice Hall, 1997). Lasvariables son el estado Identificacion ( sid ), nombre del estado ( state ), los crımenes violentos porcada 100.000 personas (crime), los asesinatos por millon (munder), el porcentaje de la poblacionque vive en las areas metropolitanas ( pctmetro ), el porcentaje de la poblacion que es de colorblanco ( pctwhite ), el porcentaje de poblacion con educacion secundaria o superior ( pcths ), elporcentaje de poblacion que vive bajo la lınea de pobreza (poverty), y porcentaje de poblacionque son las familias monoparentales (simgle).
use http://www.ats.ucla.edu/stat/stata/webbooks/reg/crime
(crime data from agresti & finlay - 1997)
describe
Contains data from crime.dta
obs: 51 crime data from agresti &
finlay - 1997
vars: 11 6 Feb 2001 13:52
size: 2,295 (98.9% of memory free)
-------------------------------------------------------------------------------
1. sid float %9.0g
2. state str3 %9s
3. crime int %8.0g violent crime rate
4. murder float %9.0g murder rate
5. pctmetro float %9.0g pct metropolitan
6. pctwhite float %9.0g pct white
7. pcths float %9.0g pct hs graduates
8. poverty float %9.0g pct poverty
9. single float %9.0g pct single parent
-------------------------------------------------------------------------------
Sorted by:
summarize crime murder pctmetro pctwhite pcths poverty single
Variable | Obs Mean Std. Dev. Min Max
---------+-----------------------------------------------------
Universidad Nacional del CallaoFacultad de Ciencias Economicas
25 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
crime | 51 612.8431 441.1003 82 2922
murder | 51 8.727451 10.71758 1.6 78.5
pctmetro | 51 67.3902 21.95713 24 100
pctwhite | 51 84.11569 13.25839 31.8 98.5
pcths | 51 76.22353 5.592087 64.3 86.6
poverty | 51 14.25882 4.584242 8 26.4
single | 51 11.32549 2.121494 8.4 22.1
Digamos que queremos predecir la delincuencia por pctmetro , la pobreza , y la unica . Es decir,queremos construir un modelo de regresion lineal entre la variable de respuesta de la delincuenciay las variables independientes pctmetro , la pobreza y unica . En primer lugar, se vera en losgraficos de dispersion de los delitos contra cada una de las variables de prediccion antes de queel analisis de regresion, ası que tendremos algunas ideas acerca de posibles problemas. Podemoscrear una matriz de dispersion de estas variables como se muestra a continuacion
graph matrix crime pctmetro poverty single
scatter crime pctmetro, mlabel(state)
scatter crime poverty, mlabel(state)
scatter crime single, mlabel(state)
Ahora vamos a intentar el comando de regresion para crime pctmetro poverty and single. Vamosa ir paso a paso para identificar todos los puntos inusuales o potencialmente influyentes.
regress crime pctmetro poverty single
Source | SS df MS Number of obs = 51
---------+------------------------------ F( 3, 47) = 82.16
Model | 8170480.21 3 2723493.40 Prob > F = 0.0000
Residual | 1557994.53 47 33148.8199 R-squared = 0.8399
---------+------------------------------ Adj R-squared = 0.8296
Total | 9728474.75 50 194569.495 Root MSE = 182.07
------------------------------------------------------------------------------
crime | Coef. Std. Err. t P>|t| [95% Conf. Interval]
---------+--------------------------------------------------------------------
pctmetro | 7.828935 1.254699 6.240 0.000 5.304806 10.35306
poverty | 17.68024 6.94093 2.547 0.014 3.716893 31.64359
single | 132.4081 15.50322 8.541 0.000 101.2196 163.5965
_cons | -1666.436 147.852 -11.271 0.000 -1963.876 -1368.996
------------------------------------------------------------------------------
Vamos a examinar los residuos estudentizados como un primer medio de identificacion de va-lores atıpicos. A continuacion se utiliza la prediccion de comandos con el rstudent opcion paragenerar residuos estudentizados y nombre de los residuos r . Podemos elegir cualquier nombreque queramos, siempre y cuando se trata de una variable de nombre legal de Stata. residuos es-tudentizado son un tipo de residuo estandarizado que puede ser utilizado para identificar valoresatıpicos.
predict r, rstudent
sort r
list sid state r in 1/10
Universidad Nacional del CallaoFacultad de Ciencias Economicas
26 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
list sid state r in -10/l
hilo r state
list r crime pctmetro poverty single if abs(r) > 2
predict lev, leverage
stem lev
hilo lev state, show(5) high
display (2*3+2)/51
.15686275
list crime pctmetro poverty single state lev if lev >.156
crime pctmetro poverty single state lev
5. 208 41.8 22.2 9.4 wv .1802005
48. 761 41.8 9.1 14.3 ak .2606759
49. 434 30.7 24.7 14.7 ms .191012
50. 1062 75 26.4 14.9 la .1652769
51. 2922 100 26.4 22.1 dc .536383
lvr2plot, mlabel(state)
list state crime pctmetro poverty single if state=="dc" | state=="ms"
predict d, cooksd
list crime pctmetro poverty single state d if d>4/51
predict dfit, dfits
list crime pctmetro poverty single state dfit if abs(dfit)>2*sqrt(3/51)
dfbeta
DFpctmetro: DFbeta(pctmetro)
DFpoverty: DFbeta(poverty)
DFsingle: DFbeta(single)
list state DFpctmetro DFpoverty DFsingle in 1/5
scatter DFpctmetro DFpoverty DFsingle sid, ylabel(-1(.5)3) yline(.28 -.28)
scatter DFpctmetro DFpoverty DFsingle sid, ylabel(-1(.5)3) yline(.28 -.28) ///
mlabel(state state state)
list DFsingle state crime pctmetro poverty single if abs(DFsingle) > 2/sqrt(51)
avplot single, mlabel(state)
avplots
regress
regress crime pctmetro poverty single if state!="dc"
regress crime pctmetro poverty single
avplot pctwhite
regress crime pctmetro pctwhite poverty single
Universidad Nacional del CallaoFacultad de Ciencias Economicas
27 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
3.4.2. Comprobando la Normalidad de los Residuos
Muchos investigadores creen que la regresion multiple requiere la normalidad. Este no es el caso.La normalidad de los residuos solo se requiere para la prueba de hipotesis validas, es decir, lasuposicion de normalidad asegura que el p-valores para el t-test y la prueba de F-sera valida. Lanormalidad no es necesaria para obtener estimaciones no sesgadas de los coeficientes de regre-sion. el modelo de regresion se limita a exigir que los residuales (errores) que de forma identicae independientemente distribuidos. Ademas, no hay ninguna hipotesis o requisito de que lasvariables predictoras una distribucion normal. Si este fuera el caso de lo que no serıa capaz deutilizar las variables dummy codificada en nuestros modelos.
Despues de realizar un analisis de regresion, podemos utilizar la prediccion de comandos paracrear los residuos y luego usar comandos como kdensity , qnorm y pnorm para comprobar lanormalidad de los residuos.
Vamos a utilizar el elemapi2 archivo de datos que vimos anteriormente para estos analisis. Vamosa predecir el rendimiento academico ( api00 ) de por ciento de recibir comidas gratis ( meals ), elporcentaje de estudiantes del idioma Ingles ( ell ), y el porcentaje de maestros con credencialesde emergencia ( emer ).
use elemapi2
regress api00 meals ell emer
Source | SS df MS Number of obs = 400
---------+------------------------------ F( 3, 396) = 673.00
Model | 6749782.75 3 2249927.58 Prob > F = 0.0000
Residual | 1323889.25 396 3343.15467 R-squared = 0.8360
---------+------------------------------ Adj R-squared = 0.8348
Total | 8073672.00 399 20234.7669 Root MSE = 57.82
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
---------+--------------------------------------------------------------------
meals | -3.159189 .1497371 -21.098 0.000 -3.453568 -2.864809
ell | -.9098732 .1846442 -4.928 0.000 -1.272878 -.5468678
emer | -1.573496 .293112 -5.368 0.000 -2.149746 -.9972456
_cons | 886.7033 6.25976 141.651 0.000 874.3967 899.0098
------------------------------------------------------------------------------
predict r, resid
kdensity r, normal
pnorm r
qnorm r
swilk r *Prueba de normalidad de Shapiro-Wilk con H0 = normalidad
jb r *Prueba de Jarque-Bera
3.4.3. Comprobando Homocedasticidad de los Residuos
Uno de los principales supuestos de la regresion por mınimos cuadrados ordinarios es la homo-geneidad de varianza de los residuales. Si el modelo esta bien equipada, no deberıa haber ningunpatron para los residuos conspiro contra los valores ajustados. Si la varianza de los residuos noes constante, entonces la varianza residual se dice que es ”heterocedasticos”. Hay y no metodos
Universidad Nacional del CallaoFacultad de Ciencias Economicas
28 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
graficos grafica para la deteccion de heterocedasticidad. Un metodo comunmente utilizado grafi-ca es graficar los residuos contra equipada (prevista) valores. Hacemos esto mediante la emisionde la rvfplot comando. A continuacion se utiliza el rvfplot comando con el yline (0) opcion deponer una lınea de referencia en y = 0. Vemos que el patron de los puntos de datos es cada vezun poco mas estrecha hacia el extremo derecho, que es una indicacion de heterocedasticidad.
rvfplot, yline (0)
estat imtest *Descomposicion de Cameron and Trivedi
hettest estat *test de breuch-pagan
La primera prueba de heteroscedasticidad propuesta es por el comando imest y la segundapropuesta por hettest es la prueba de Breusch-Pagan. Tanto la hipotesis nula de que la varianzade los residuales es homogenea. Por lo tanto, si el p-valor es muy pequeno, habrıa que rechazarla hipotesis y aceptar la hipotesis alternativa de que la variacion no es homogenea. Ası que eneste caso, la evidencia esta en contra de la hipotesis nula de que la varianza es homogenea. Estaspruebas son muy sensibles a los supuestos del modelo, como el supuesto de normalidad. Por lotanto, es una practica comun de combinar los ensayos con parcelas de diagnostico para emitirun juicio sobre la gravedad de la heterocedasticidad y decidir si es necesaria una correccion parala heterocedasticidad. En nuestro caso, el argumento anterior no muestra una evidencia muyfuerte. Ası que no vamos a entrar en detalles sobre como corregir heterocedasticidad a pesar deque existen metodos disponibles.
3.4.4. Comprobando Colinealidad
Cuando existe una relacion lineal perfecta entre las variables predictoras, las estimaciones deun modelo de regresion no puede ser unica calculada. La colinealidad termino implica que dosvariables son casi perfectas combinaciones lineales de unos a otros. Cuando mas de dos variablesestan implicados a menudo se denomina multicolinealidad, aunque los dos terminos se usan in-distintamente.
La principal preocupacion es que a medida que aumenta el grado de multicolinealidad, las esti-maciones del modelo de regresion de los coeficientes se vuelven inestables y los errores estandarpara los coeficientes se pueden obtener muy exagerados. En esta seccion, exploraremos algunoscomandos de Stata que ayudan a detectar la multicolinealidad.
Podemos utilizar el comando vif despues de la regresion para comprobar si hay multicolinealidad.vif es sinonimo de factor de inflacion de varianza. Como regla general, una variable cuyo VIFvalores son mayores de 10 pueden merecer una mayor investigacion. Tolerancia, definida como1/VIF, es utilizado por muchos investigadores para comprobar el grado de colinealidad. Unvalor de tolerancia mas bajo que 0.1 es comparable a un VIF de 10. Esto significa que la variablepuede considerarse como una combinacion lineal de otras variables independientes. Vamos amirar primero la regresion en la que hicimos a partir de la ultima seccion, el modelo de regresionpredecir api00 de comidas, codo y la emergencia y luego emitir el comando vif.
regress api00 acs_k3 grad_sch col_grad some_col
Source | SS df MS Number of obs = 398
---------+------------------------------ F( 4, 393) = 107.12
Model | 4180144.34 4 1045036.09 Prob > F = 0.0000
Residual | 3834062.79 393 9755.88497 R-squared = 0.5216
---------+------------------------------ Adj R-squared = 0.5167
Universidad Nacional del CallaoFacultad de Ciencias Economicas
29 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Total | 8014207.14 397 20186.9197 Root MSE = 98.772
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
---------+--------------------------------------------------------------------
acs_k3 | 11.7126 3.664872 3.196 0.002 4.507392 18.91781
grad_sch | 5.634762 .4581979 12.298 0.000 4.733937 6.535588
col_grad | 2.479916 .3395548 7.303 0.000 1.812345 3.147487
some_col | 2.158271 .4438822 4.862 0.000 1.28559 3.030952
_cons | 283.7446 70.32475 4.035 0.000 145.4849 422.0044
------------------------------------------------------------------------------
vif
Variable | VIF 1/VIF
---------+----------------------
col_grad | 1.28 0.782726
grad_sch | 1.26 0.792131
some_col | 1.03 0.966696
acs_k3 | 1.02 0.976666
---------+----------------------
Mean VIF | 1.15
collin acs_k3 avg_ed grad_sch col_grad some_col
Collinearity Diagnostics
SQRT Cond
Variable VIF VIF Tolerance Eigenval Index
-------------------------------------------------------------
acs_k3 1.03 1.01 0.9719 2.4135 1.0000
avg_ed 43.57 6.60 0.0230 1.0917 1.4869
grad_sch 14.86 3.86 0.0673 0.9261 1.6144
col_grad 14.78 3.84 0.0677 0.5552 2.0850
some_col 4.07 2.02 0.2460 0.0135 13.3729
-------------------------------------------------------------
Mean VIF 15.66 Condition Number 13.3729
collin acs_k3 grad_sch col_grad some_col
Collinearity Diagnostics
SQRT Cond
Variable VIF VIF Tolerance Eigenval Index
-------------------------------------------------------------
acs_k3 1.02 1.01 0.9767 1.5095 1.0000
grad_sch 1.26 1.12 0.7921 1.0407 1.2043
col_grad 1.28 1.13 0.7827 0.9203 1.2807
some_col 1.03 1.02 0.9667 0.5296 1.6883
-------------------------------------------------------------
Mean VIF 1.15 Condition Number 1.6883
3.4.5. Errores de Especificacion
Un error de especificacion del modelo se puede producir cuando una o mas variables relevantesse omiten en el modelo o una o mas variables irrelevantes se incluyen en el modelo. Si se omiten
Universidad Nacional del CallaoFacultad de Ciencias Economicas
30 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
variables relevantes del modelo, la varianza comun que comparten con las variables incluidaspueden ser erroneamente atribuidos a esas variables, y el termino de error se infla. Por otrolado, si se incluyen variables irrelevantes en el modelo, la varianza comun que comparten conlas variables se pueden incluir erroneamente se les atribuye. errores de especificacion del modelopuede afectar sustancialmente la estimacion de los coeficientes de regresion.Considere el siguiente modelo. Esta regresion sugiere que a medida que aumenta el tamano delas clases aumenta el rendimiento academico. Antes de publicar los resultados diciendo que elaumento de tamano de clase se asocia con un mejor desempeno academico, vamos a comprobarla especificacion del modelo.
use http://www.ats.ucla.edu/stat/stata/webbooks/reg/elemapi2
regress api00 acs_k3
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 1, 396) = 11.93
Model | 234353.831 1 234353.831 Prob > F = 0.0006
Residual | 7779853.31 396 19646.0942 R-squared = 0.0292
-------------+------------------------------ Adj R-squared = 0.0268
Total | 8014207.14 397 20186.9197 Root MSE = 140.16
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
acs_k3 | 17.75148 5.139688 3.45 0.001 7.646998 27.85597
_cons | 308.3372 98.73085 3.12 0.002 114.235 502.4393
------------------------------------------------------------------------------
Hay un par de metodos para detectar errores de especificacion. El linktest comando realiza unaprueba de especificacion de enlace del modelo para la ecuacion de modelos individuales. linktestse basa en la idea de que si una regresion esta correctamente especificado, no se debe ser capazde encontrar cualquier independientes variables adicionales que son significativos, excepto porcasualidad. linktest crea dos nuevas variables, la variable de prediccion, hat , y la variable deprediccion al cuadrado, hatsq . El modelo se vuelva a colocar utilizando estas dos variables comopredictores. hat debe ser significativo, ya que es el valor predicho. Por otra parte, hatsq no debe,porque si nuestro modelo se ha especificado correctamente, las predicciones cuadrado no tienenmucho poder explicativo. Es decir no podemos esperar hatsq ser un factor importante parapredecir si nuestro modelo se ha especificado correctamente. Ası que vamos a estar buscando enel valor de p para hatsq.
linktest
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 2, 395) = 7.09
Model | 277705.911 2 138852.955 Prob > F = 0.0009
Residual | 7736501.23 395 19586.0791 R-squared = 0.0347
-------------+------------------------------ Adj R-squared = 0.0298
Total | 8014207.14 397 20186.9197 Root MSE = 139.95
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
Universidad Nacional del CallaoFacultad de Ciencias Economicas
31 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
_hat | -11.05006 8.104639 -1.36 0.174 -26.98368 4.883562
_hatsq | .0093318 .0062724 1.49 0.138 -.0029996 .0216631
_cons | 3884.48 2617.695 1.48 0.139 -1261.877 9030.837
------------------------------------------------------------------------------
De lo anterior linktest , la prueba de hatsq no es significativa. Esto quiere decir que linktest noha podido rechazar la hipotesis de que el modelo se ha especificado correctamente. Por lo tanto,nos parece que no tenemos un error de especificacion. Pero ahora, vamos a ver otra prueba antesde saltar a la conclusion.
El ovtest comando realiza otra prueba del modelo de especificacion de la regresion. Se realizauna regresion de la prueba de error (RESET) para las variables omitidas. La idea detras deovtest es muy similar a linktest . Tambien crea nuevas variables sobre la base de los predictoresy reinstala el modelo utilizando las nuevas variables para ver si alguno de ellos serıa significativo.Vamos a intentar ovtest en nuestro modelo.
ovtest
Ramsey RESET test using powers of the fitted values of api00
Ho: model has no omitted variables
F(3, 393) = 4.13
Prob > F = 0.0067
El ovtest comando indica que hay variables omitidas. Ası que hemos tratado tanto en el linktesty ovtest , y uno de ellos ( ovtest ) nos dice que tenemos un error de especificacion. Por tanto,tenemos que reconsiderar nuestro modelo.
Vamos a intentar agregar la variable full con el modelo. Ahora, tanto el linktest y ovtest sonsignificativos, lo que indica que tenemos un error de especificacion.
regress api00 acs_k3 full
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 2, 395) = 101.19
Model | 2715101.89 2 1357550.95 Prob > F = 0.0000
Residual | 5299105.24 395 13415.4563 R-squared = 0.3388
-------------+------------------------------ Adj R-squared = 0.3354
Total | 8014207.14 397 20186.9197 Root MSE = 115.83
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
acs_k3 | 8.355681 4.303023 1.94 0.053 -.1040088 16.81537
full | 5.389788 .3963539 13.60 0.000 4.610561 6.169015
_cons | 32.21346 84.07525 0.38 0.702 -133.0775 197.5044
------------------------------------------------------------------------------
linktest
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 2, 395) = 108.32
Universidad Nacional del CallaoFacultad de Ciencias Economicas
32 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
Model | 2838564.40 2 1419282.20 Prob > F = 0.0000
Residual | 5175642.74 395 13102.893 R-squared = 0.3542
-------------+------------------------------ Adj R-squared = 0.3509
Total | 8014207.14 397 20186.9197 Root MSE = 114.47
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
_hat | -1.868895 .9371889 -1.99 0.047 -3.711397 -.0263936
_hatsq | .0023436 .0007635 3.07 0.002 .0008426 .0038447
_cons | 858.8726 283.4594 3.03 0.003 301.5948 1416.15
------------------------------------------------------------------------------
ovtest
Ramsey RESET test using powers of the fitted values of api00
Ho: model has no omitted variables
F(3, 392) = 4.09
Prob > F = 0.0071
Vamos a intentar anadir una variable mas, las meals , con el modelo anterior.
regress api00 acs_k3 full meals
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 3, 394) = 615.55
Model | 6604966.18 3 2201655.39 Prob > F = 0.0000
Residual | 1409240.96 394 3576.7537 R-squared = 0.8242
-------------+------------------------------ Adj R-squared = 0.8228
Total | 8014207.14 397 20186.9197 Root MSE = 59.806
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
-------------+----------------------------------------------------------------
acs_k3 | -.7170622 2.238821 -0.32 0.749 -5.118592 3.684468
full | 1.327138 .2388739 5.56 0.000 .857511 1.796765
meals | -3.686265 .1117799 -32.98 0.000 -3.906024 -3.466505
_cons | 771.6581 48.86071 15.79 0.000 675.5978 867.7184
------------------------------------------------------------------------------
linktest
Source | SS df MS Number of obs = 398
-------------+------------------------------ F( 2, 395) = 931.68
Model | 6612479.76 2 3306239.88 Prob > F = 0.0000
Residual | 1401727.38 395 3548.67691 R-squared = 0.8251
-------------+------------------------------ Adj R-squared = 0.8242
Total | 8014207.14 397 20186.9197 Root MSE = 59.571
------------------------------------------------------------------------------
api00 | Coef. Std. Err. t P>|t| [95% Conf. Interval]
Universidad Nacional del CallaoFacultad de Ciencias Economicas
33 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
-------------+----------------------------------------------------------------
_hat | 1.42433 .2925374 4.87 0.000 .849205 1.999455
_hatsq | -.0003172 .000218 -1.46 0.146 -.0007458 .0001114
_cons | -136.5102 95.05904 -1.44 0.152 -323.3951 50.3747
------------------------------------------------------------------------------
ovtest
Ramsey RESET test using powers of the fitted values of api00
Ho: model has no omitted variables
F(3, 391) = 2.56
Prob > F = 0.0545
El linktest es una vez mas no significativa, mientras que el valor de p para ovtest es ligeramentesuperior a 0,05. Tenga en cuenta que despues de incluir las variables full and meals , el coeficientepara el tamano de la clase ya no es significativa. Mientras acsk3 tiene una relacion positiva conapi00 cuando no hay otras variables en el modelo, cuando se incluye, y por lo tanto el controlde otras variables importantes, acsk3 ya no esta significativamente relacionado con api00 y surelacion con api00 ya no es positivo .
linktest y ovtest herramientas disponibles en Stata para el control de errores de especificacion,aunque linktest en realidad puede hacer mas que comprobar las variables omitidas ya que aquı seutiliza, por ejemplo, comprobar la correccion de la funcion de especificacion de enlace. Para masdetalles sobre estas pruebas, por favor consulte el manual de Stata.
3.4.6. Independencia
La declaracion de esta suposicion de que los errores asociados a una observacion no estan cor-relacionados con los errores de cualquier otra observacion cubrir varias situaciones diferentes.Consideremos el caso de la recogida de datos de los estudiantes de ocho escuelas primarias difer-entes. Es probable que los estudiantes en cada escuela tienden a ser mas parecidas entre sı que losestudiantes de diferentes escuelas, es decir, sus errores no son independientes. Nos ocuparemosde este tipo de situaciones en otro manual cuando se demuestra la regresion de comandos conla opcion cluster.
Otra forma en que la independencia puede ser el supuesto se rompe cuando se recogen datossobre las mismas variables en el tiempo. Digamos que se recogen datos absentismo escolar cadasemestre durante 12 anos. En esta situacion, es probable que los errores de observacion entresemestres adyacentes sera mas alta correlacion de las observaciones mas separadas en el tiempo.Esto se conoce como autocorrelacion. Cuando haya datos que pueden ser considerados como deseries de tiempo que debe utilizar el dwstat comando que realiza una prueba de Durbin-Watsonde coeficiente de correlacion.
No tenemos ninguna serie de datos en tiempo, ası que vamos a utilizar el elemapi2 conjuntode datos y pretender que snum indica el momento en que se recogieron los datos. Tambientendra que usar el tsset comando para que Stata saber que variable es la variable tiempo.
use http://www.ats.ucla.edu/stat/stata/webbooks/reg/elemapi2
tsset snum
time variable: snum, 58 to 6072, but with gaps
Universidad Nacional del CallaoFacultad de Ciencias Economicas
34 Junior Urtecho [email protected]
Manejo de Datos y Analisis Econometrico con STATAEconometrıa II
regress api00 enroll
( output omitted )
dwstat
Number of gaps in sample: 311
Durbin-Watson d-statistic( 2, 400) = .2892712
El estadıstico de Durbin-Watson tiene un rango de 0 a 4 con un punto medio de 2. El valorobservado en nuestro ejemplo es muy pequeno, cercano a cero, lo cual no es sorprendente, yaque nuestros datos no son realmente de series de tiempo. Un control visual simple serıa paratrazar los residuos contra la variable tiempo.
. predict r, resid
scatter r snum
Universidad Nacional del CallaoFacultad de Ciencias Economicas
35 Junior Urtecho [email protected]
Bibliografıa
[1] Baum, C. (2006). An Introduction to Modern Econometrics Using Stata . Stata Press
[2] Cameron, A., and Trivedi, P., (2009). Microeconometrics Using Stata . Stata Press.
[3] Hamilton, L., (2006). Statistics with Stata . Thomson.
[4] Rabe-Hesketh, S. and Everitt, B. (2000). A Handbook of Statistical Analyses using Stata .Second Edition. Chapman and Hall/CRC.
[5] Torres/Reyna, O. (2009). Getting Started in Data Analysis using Stata . Princeton Univer-sity.
[6] Regresion whit Stata. UCLA: Academic Technology Services, Statistical Consulting Group. from http://www.ats.ucla.edu/stat/stata/webbooks/(accessed May 02, 2011).
36