Taller Stata

download Taller Stata

If you can't read please download the document

description

stata

Transcript of Taller Stata

Documento313Taller StataJeanette Fuentes Responsable de la elaboracin. [email protected] 1En estas clases prcticas veremos cmo utilizar el programa Stata para el trabajo econmico emprico. Para esto trabajaremos con bases de datos que nos aporten informacin respecto a lo que queramos estudiar. Introduccin a StataAl trabajar en stata ocuparemos principalmente los siguientes archivos:name.dtaBase de datos en stataname.logArchivo en el que podemos guardar comandos y resultados, excepto grficos.name.doArchivo con comandos, generalmente hecho en el editor de stata, block de notas o word (pero guardado con formato slo texto). Nos permite hacer un programa para luego hacerlo correr en stata, lo cual es ms rpido que trabajar en forma interactiva.name.adoArchivo que contiene un mini programa ya insertado a stata, el cual nos permite hacer clculos sin tener que programar en el momento las instrucciones para hacer por ej. un ndice, sino que simplemente ocupamos un comando que nos hace funcionar el programa. ste est inserto en la librera de stata.Base de datos Antes de abrir una base de datos (y de comenzar a trabajar) es necesario colocar memoria al programa, para ello hacemos:. set mem 90mPara abrir una base .dta debemos hacer:FileOpenabriro bien tipear directamente:. use [disco en que lo guardaremos] \ [ruta de acceso] \ [nombre de archivo.dta], clearpor ejemplo:. use "C:\Jeanette\Casen\Casen90\casen901.dta", clearLuego, para guardar una base de datos, reescribiendo sobre la base antigua, hacemos:. save [disco en que lo guardaremos] \ [ruta de acceso] \ [nombre de archivo.dta], replaceSi queremos ver los datos de la base, podemos hacer click en el Data browse, y si queremos modificar los datos debemos abrir el Data editor.Archivo log:Para guardar todo lo que hagamos podemos hacer un log, el cual puede ser abierto despus en un procesador de texto. Para ello hacemos:open logopeno bien tipeamos directamente: log using [disco en que lo guardaremos] \ [ruta de acceso] \ [nombre de archivo.log]por ejemplo:log using C:\Jeanette\clase1.logAqu agregamos ,replace para que cada vez que hagamos correr un programa .do los resultados se reescriban sobre lo hecho antes.log using C:\Jeanette\clase1.log, replacePara terminar de usar el log debemos tipear:. log closeLos archivos .do y .ado los veremos ms adelante.Principales comandos:help (h)Este es un comando con el cual podemos obtener ayuda de stata. Si hacemos help comando, obtendremos ayuda especfica del comando. Ej:. help graph describe (d)Este comando nos despliega un resumen de los contenidos de la base de datos que tenemos abierta.summarize(sum)Computa estadsticas descriptivasEj:. sum edadVariable | Obs Mean Std. Dev. Min Max---------+----------------------------------------------------- edad | 26852 29.63779 20.83074 0 98 . sum edad yoprajVariable | Obs Mean Std. Dev. Min Max---------+----------------------------------------------------- edad | 26852 29.63779 20.83074 0 98 yopraj | 9200 174504.9 336834.5 0 1.23e+07 tabulate(tab)Computa frecuenciasEj:. tab sexo Sexo | Freq. Percent Cum.------------+----------------------------------- 1 | 13235 49.29 49.29 2 | 13617 50.71 100.00------------+----------------------------------- Total | 26852 100.00. tab pco1 sexoRel.con el | Jefe de | Sexo hogar | 1 2 | Total-----------+----------------------+---------- 1 | 5290 1418 | 6708 2 | 174 4762 | 4936 3 | 5928 5456 | 11384 4 | 34 148 | 182 5 | 28 85 | 113 6 | 209 186 | 395 7 | 1023 953 | 1976 8 | 143 143 | 286 9 | 52 62 | 114 10 | 251 242 | 493 11 | 98 89 | 187 12 | 5 73 | 78 -----------+----------------------+---------- Total | 13235 13617 | 26852 Creacin de Variablesgenerate(gen)Este es un comando que nos permite crear variables, las cuales pueden ser una combinacin de otras o una variable totalmente nueva . Por ejemplo, para crear una variable totalmente nueva puedo hacer:. gen a=0y en el editor de stata coloco el valor de la nueva variable. Si quiero crear una variable a partir de otra puedo hacer:. gen b=3 + escExpresiones lgicas y matemticas ms usadas+suma>=Mayor o igual&y-resta>Mayor estricto que|o*multiplicacin|t| [95% Conf. Interval]---------+-------------------------------------------------------------------- sexo | -84815.81 7860.058 -10.791 0.000 -100223.3 -69408.35 edad | 2917.966 263.1105 11.090 0.000 2402.21 3433.721 activi | 140.6518 11.84967 11.870 0.000 117.4238 163.8798 _cons | 101584.8 14811.16 6.859 0.000 72551.64 130617.9------------------------------------------------------------------------------De forma similar funciona el comando dprobitque nos permite estimar por probit. replace(replace)Con este comando puedo reemplazar una variable por otra, o el valor de la variable en un caso determinado por otro.Ej:. replace a=brename(rename)Con rename puedo cambiarle el nombre a una variable. Para ello puedo hacer:. rename nombre antiguo nombre nuevoegen(egen)Este comando tambin nos permite crear variables, pero a partir de la aplicacin de una funcin conocida por stata sobre alguna variable en particular.Ej:. egen e = max(edad). sum eVariable | Obs Mean Std. Dev. Min Max---------+----------------------------------------------------- e | 26852 98 0 98 98 sort(sort)Nos permite ordenar la variable especificada en orden ascendente.graph(graph)Nos permite hacer grficos. Para llevarlos a word slo debemos copiar y pegarlos, esto es:editcopyPara hacer un grfico simple: (de ingresos de la ocupacin principal por comunas). graph yopraj comuPara hacer un grfico de barras:. sort pco1. graph yopraj, bar by(pco1)Un truco muy utilizado para que las tablas aparezcan ordenadas en word, es colocar todo en letra tamao 9.Clase 2En esta clase continuaremos viendo comandos bsicos de stata, y aprendiendo a trabajar con nuestra base de datos.Base de DatosTrabajaremos con una parte de la encuesta Casen 98. Es fundamental para ello saber relacionar los resultados que buscamos con las respuestas del cuestionario.Comenzaremos por hacer un breve anlisis del cuestionario para familiarizarnos con ste. Identificadores: r : reginp: provinciacomu: comunaz: zona (1:urbano; 2:rural)seg:Segmento al cual pertenece la encuesta (subdivisin de las comunas)f :Folio de la encuestao:Orden de la persona dentro de la encuestaHogar:La encuesta Casen es dirigida al jefe de hogar, por lo que generalmente contesta l o su cnyuge por todos los miembros de la familia. Por esto hay que tener cuidado con las conclusiones que se saquen a partir de ciertas preguntas, porque como no es el afectado necesariamente quien las responde, puede haber sesgo. En cada encuesta hay slo un hogar. ste lo constituyen las personas que viven bajo el mismo techo y comparten el presupuesto para comida. En un mismo hogar pueden haber ms de un ncleo, por lo que es necesario distinguir entre el jefe de hogar y el jefe de ncleo. Usualmente se trabaja ms con la variable relacin con el jefe de hogar (pco1).Se conoce por jefe de hogar al hombre que constituye el ncleo principal del hogar. Se dir que una mujer es jefe de hogar slo en el caso en que no haya un marido. Esta variable nada tiene que ver con el aporte de ingresos, ni toma de decisiones.EducacinPara conocer el nivel de educacin de cada miembro del hogar se le pregunta cul es el curso y tipo de estudio actual (para los que estn estudiando) o ltimo curso aprobado (para los que no estn estudiando). A partir de estas dos variables (e5 y e6) se construye la variables aos de escolaridad (en la base de clases: esc). As, si por ejemplo: Si una persona tiene como ltimo curso probado 2 medio tcnico profesional: e6=7 y e5=2. En este caso esc= 8 + 2=10 (ya que como est en enseanza media tiene 8 aos aprobados + los dos de enseanza media)IngresosLos ingresos de la persona se dividen en una serie de categoras, ya sea tomando en cuenta el ingreso de la ocupacin principal (yopraj) o agregndole otra serie de ingresos (ing. de otros trabajos, subsidios, regalas, etc.) que junto al yopraj constituyen el ingreso monetario total por persona (ymoneaj).Para conseguir el ingreso total familiar debemos tomar otro ingreso ms en cuenta: alquiler imputado por la casa en que vive (si es que no paga arriendo por ella): yaimhajLuego, el ingreso total familiar ser:ytothaj = ymoneaj + yaimhajEmpleoPara saber si una persona est con empleo se le pregunta si trabaj la semana pasada (o1), y luego se corrobora su situacin preguntndole (a los que contestaron que no antes) si es que tenan empleo, pero estaban ausentes temporalmente (o2). A los que contestaron no, se les pregunta si busc trabajo remunerado en los ltimos dos meses (o3). Con todo esto podemos hacer un ndice de desempleo.Caractersticas del empleo.En esta encuesta hay tres variables que nos indican caractersticas del empleo:Oficio (viene de la pregunta V.6): oficioActividad de la empresa (viene de la pregunta V.7), con la cual podemos crear la variable sector econmico (agrupando por actividad): ramaCategora ocupacional (viene de la pregunta V.8), nos permite separar entre asalariados y no asalariados, y distinguir categoras particulares: o8Factor de expansin:En esta encuesta se utiliza un factor de expansin para hacer la muestra representativa. As, cada encuesta ser ponderada por el factor que le corresponda [w=expr1]. Por esto, cada vez que queramos hacer estadstica descriptiva, debemos ocupar este factor de expansin, de lo contrario nuestros resultados no sern representativos. Ya habamos visto la forma general de calcular estadsticas, pero como nuestra base utiliza factor de expansin, entonces la forma de hacer estadsticos es, por ejemplo:. tab sexo [w=expr1] . tab pco1 [w=expr1] if yopraj !=.Formando Hogares.Muchos anlisis de pobreza y distribucin se hacen a nivel de hogares, por lo que es fundamental que veamos la forma de agrupar cada hogar. En primer lugar es necesario agrupar a todos los miembros de un hogar a travs de una clave (o nmero) que los identifique. As creamos una macro que da a cada miembro de un mismo hogar (misma encuesta) un mismo nmero, utilizando los identificadores antes vistos. Para ello utilizamos la instruccin:. g comux=10*comu+z. macro define id identificadoreslo que en nuestro caso sera:. macro define id "comux seg f"Luego, si quisiramos contar la cantidad de personas que constituyen cada hogar podemos hacer:. egen nt= count(f) , by ($id)Ej:Construir ingreso per cpita:. macro define id "comux seg f". egen nt= count(f) , by ($id). gen ytothaj= ymonehaj + yaimhaj. gen ypc=ytothaj/ntAnlisis de pobreza y Distribucin del Ingreso.Se han desarrollado distintos mini programas instalados en la librera de stata (ado) que nos permiten hacer anlisis de distribucin del ingreso y pobreza. Aqu veremos algunos:Construir deciles: Uno de los ms tiles es construir deciles, por ej: deciles de ingreso. Para ellos utilizamos las instrucciones:La forma general de hacer esto es: xtile nombre particin = variable [factor de exoansin], nq(cantidad particiones)Ej:. xtile decil = yopraj [w=expr1], nq(10) Con lo cual estamos construyendo los deciles, en este caso por ingreso de la ocupacin principal. table decil [w=expr1], c(n yopraj mean yopraj max yopraj min yopraj)Aqu le pedimos que nos muestre una tabla con los estadsticos indicados por cada decilEj:. xtile decil = ypc [w=expr1], nq(10) . table decil [w=expr1], c(mean ypc max ypc min ypc n ypc). table decil [w=expr1], c(mean ypc max ypc min ypc n ypc)(frequency weights assumed)----------+----------------------------------------------- |quantiles |of ypc | mean(ypc) max(ypc) min(ypc) N(ypc)----------+----------------------------------------------- 1 | 33516.14 50330 0 284,666 2 | 64387.64 78017 50338 284,314 3 | 91090.68 104720 78022 285,069 4 | 119275.6 135420 104725 283,920 5 | 155207.9 175833 135428 284,576 6 | 196287 219133 175855.7 284,430 7 | 251461.6 290380 219164 284,506 8 | 338696.5 398617.5 290400 284,490 9 | 499438.6 649460 398622.5 284,429 10 | 1420327 2.66e+07 649768 284,444----------+-----------------------------------------------ineqdeco: Este es un ado que nos entrega ndices de distribucin del ingreso.Ej: . ineqdeco ypc [w=expr1] Percentile ratios for distribution of ypc: all valid obs.------------------------------------------------------------p90/p10 p90/p50 p10/p50 p75/p25 p75/p50 p25/p50------------------------------------------------------------ 12.855 3.700 0.288 3.700 1.911 0.516 Generalized Entropy indices GE(a), where a = income difference sensitivity parameter, and Gini coefficient----------+----------------------------------------------------------- All obs | GE(-1) GE(0) GE(1) GE(2) Gini----------+----------------------------------------------------------- | 1.10400 0.57759 0.65044 1.62925 0.56074----------+----------------------------------------------------------- Atkinson indices, A(e), where e > 0 is the inequality aversion parameter----------+----------------------------------- All obs | A(0.5) A(1) A(2)----------+----------------------------------- | 0.26254 0.43875 0.68828----------+-----------------------------------ineqrau4: Con este ado obtenemos indicadores de distribucin y la tasa de pobreza. Para ocuparlo primero debemos definir una lnea de pobreza.Ej:. gen linea=37889. ineqrau4 ypc [w=expr1], by (linea)Medidas de desigualdad y pobreza de ypc------------------------------------------------------------------------------1.- Coeficiente de Gini .561390672.- Razon de Quintiles 19.6127693.- Tasa de Pobreza .044963454.- Brecha de Pobreza .015984925.- Numero de pobres 1279146.- Ingreso Medio quintil n1 48942.3437.- Ingreso Medio quintil n2 105154.678.- Ingreso Medio quintil n3 175742.189.- Ingreso Medio quintil n4 295077.8210.- Ingreso Medio quintil n5 959894.88------------------------------------------------------------------------------ApndiceEn esta seccin haremos un programa .do, con l podremos hacer un programa y hacerlo correr en stata, lo cual es un mtodo mucho ms rpido que el interactivo. El do se puede hacer en el editor de stata, en word (guardndolo como slo texto) o en el block de notas. En estos ejemplos trabajaremos en el block. Trate de entender cada una de las instrucciones que se presentan, cundo hay que modificarlas, y la pertinencia de cada una de ellas, ya que este no es un programa tan estndar, y cada vez que usted quiera programar, deber analizar bien qu es lo que buscar, y una vez que tenga claro cmo se hara a mano, puede comenzar a programar.Haremos un ejemplo en que buscamos analizar hogares:Primero indicamos la base que usaremos y luego el log:use x:\variables_clase.dtalog using x:\ejercicio1.log, replacePara trabajar con estadsticas por hogares usualmente se excluye al servicio domstico puertas adentro, por lo que hacemos: preservedrop if o8 == 5Luego anidamos hogares:g comux=10*comu+z macro define id "comux seg f" egen nt= count(f) , by ($id)Si queremos hacer indicaciones para guiarnos en el programa programa podemos escribir cosas entre asteristos:* excluye servicio dom adentro *Generamos el ingreso per cpita por hogar:**ingreso per cpita simple**gen ytothaj= ymonehaj + yaimhajgen ypc=ytothaj/nt restoreForma paralela de calcular el ingreso per cpita:*** Ingreso per cpita nmero 2, considera servicio domestico puertas adentro como hogar independiente, corrige por servicio domes externo, que se haba excluido de otros procedimientos*************reegen nt2= count(f) if o8 !=4, by ($id)sum nt2 [w=expr1]replace ytothaj = yopraj if o8 == 4gen ypc2=ytothaj/nt2 replace ypc2 = yopraj if o8 == 4Tercera forma:**genera ingreso per cpita corregido por escalas de equivalencia, segn ecuacin del banco mundial**egen n1 = count(f) if ((pco1 != 1 & edad >= 11) & o8!=4), by($id)egen n2 = count(f) if ((pco1!=1 & edad >= 5 & edad < 11) & o8!=4), by($id)egen n3 = count(f) if ((pco1 != 1 & edad >= 0 & edad < 5) & o8!=4), by($id)egen n11 = max(n1), by($id)egen n22 = max(n2), by($id)egen n33 = max(n3), by($id)replace n11 = 0 if n11 == .replace n22 = 0 if n22 == .replace n33 = 0 if n33 == .g neq = (1.2 + 0.8*n11 + 0.4*n22 + 0.3*n33)gen ypeq = ytothaj/neqreplace ypeq = yopraj/1.2 if o8 == 4ineqdeco ypc [w=expr1]ineqdeco ypc2 [w=expr1]ineqdeco ypeq [w=expr1]pregunta: qu diferencia fundamental hay entre colocar la condicin if pcoh==1 y no colocarla?xtile decil = ypc if pco1 == 1 [w=expr1], nq(10) table decil if pco1==1 [w=expr1], c(mean ypc max ypc min ypc n ypc)xtile decil2 = ypc2 if pco1 == 1 [w=expr1], nq(10) table decil2 if pco1==1 [w=expr1], c(mean ypc2 max ypc2 min ypc2 n ypc2)xtile decil3 = ypeq if pco1 == 1 [w=expr1], nq(10) table decil3 if pco1==1 [w=expr1], c(mean ypc max ypc min ypc n ypc)clearAl guardarlo, debemos guardarlo con un nombre *.do, y si trabajan en word, asegurarse que escogen la alternativa tipo de archivo: slo textoPara hacer correr el programa debemos hacer:do disco\ubicacin del archivoes decir:do x:\clase3.doGua de EjerciciosEjercicios:1)Sabiendo que sexo=1=hombre y sexo=2=mujer, haga una tabla de frecuencias de la relacin con el jefe de hogar por regin para mujeres. 2)Encuentre el ingreso promedio (de la ocupacin principal) de los hombres, entre 25 y 45 aos con 12 o ms aos de estudio (excluyendo a quienes no reciben ingresos) y comprelo con el ingreso promedio de las mujeres del grupo similar.3)Si dividimos a la poblacin en cinco categoras:1: Personas que tienen enseanza bsica incompleta2: Personas con enseanza bsica completa3: Personas con enseanza media incompleta4: Personas con enseanza media completa5: Personas con enseanza superior completa o incompleta completaHaga un grfico de barras entre categoras (eje x) e ingresos (eje y)4) Teniendo en cuenta lo siguiente:a)Excluya servicio domsticob)La lnea de la pobreza para la regin metropolitana es de $28.093, pero tiene distintas ponderaciones por regin:R=11.22R=21.17R=31.11R=41.09R=51.04R=61.03R=71.01R=81.04R=91.05R=101.04R=111.09R=121.22R=131Realizar un perfil de pobreza de acuerdo a las siguientes caractersticas del jefe de hogar: gnero, edad (tramos: 15 a 29; 30 a 45; 46 a 60; 61 a 99), educacin (tramos: bsica incompleta, bsica completa, media incompleta, media completa, superior (hasta tres aos), superior (cuatro aos y ms), regin. Probar que headcount y la brecha de pobreza son aditivos separables (el total es igual a los promedios ponderados)5)Para las variables ingreso per cpita del hogar e ingreso por adulto equivalente calcule los siguientes indicadores de desigualdad:-Coeficientes: Gini, E(0), E(1), E(2), Atkinson (e=0.5, 1 y 2)-Brechas: 90/10, 90/50, 10/50, 75/25-Deciles: participacin relativa e ingreso promedio por decilTome la siguiente escala de equivalencia:neq = (1.2 + 0.8*n11 + 0.4*n22 + 0.3*n33)Donde: N11: Personas distintas al jefe de hogar que tengan 12 aos o msN22: Personas distintas al jefe de hogar que tengan entre 4 y 11 aosN33: Personas distintas al jefe de hogar que tengan entre 0 y 4 aos6)Haga un anlisis de quines estn en isapres y en fonasa, segn quintiles de ingreso y factores de riesgo (gnero/edad)7)Estime por MCO una ecuacin de Mincer, incluyendo dummies por zona rural-urbano y sexo9) Estime un modelo probit sobre la probabilidad de obtener un subsidio. Modele como usted estime conveniente