1 Curso de introduccin a Stata J ordi Muoz (UAB) Sesin 1: Introduccin a STATA. Inspeccin de datos
Por qu usar Stata? SPSS, Stata o R?
Potencia Dificultad de uso Precio Uso prioritario SPSS Alta Baja* Muy alto Docencia / profesional Stata Muy alta Media Medio/Alto Investigacin aplicada R Mxima Alta Gratuito Investigacin bsica y aplicada
Mens o sintaxis?
En los paquetes de anlisis de datos podemos trabajar de dos modos: meidante un sistema de mens y ventanas, o mediante la sintaxis (escribiendo nosotros mismos los comandos que debe ejecturar el programa).
En este curso usaremos una combinacin de ambos mtodos. Sin embargo, el trabajo con sintaxis a pesar de la curva de aprendizaje ms pronunciada, tiene ventajas:
Replicabilidad. Es fundamental en la investigacin cientfica y cada vez ms las revistas acadmicas exigen los archivos de sintaxis para la publicacin de los artculos. Eficiencia. En condiciones reales de trabajo continuado, el uso de la sintaxis representa un incremento exponencial de nuestra eficiencia. Control. La posibilidad de control, deteccin de errores y trabajo colaborativo se incrementa enormemente cuando usamos la sintaxis.
Ventanas de Stata
Stata se organiza en diversas ventanas que nos aportan informacin y nos permiten realizar distintas operaciones. Las principales ventanas en Stata son las siguientes:
2 Curso de introduccin a Stata J ordi Muoz (UAB)
Lnea de comando Nos permite escribir las rdenes que queremos que ejecute el programa. Es uno de los principales mecanismos de relacin del usuario hacia el programa.
Results En esta ventana apareceran los resultados de los comandos que vayamos ejecutando. En esta ventana es donde el programa responde a nuestras rdenes.
Review Esta ventana va archivando las rdenes que vamos escribiendo en la lnea de comando. Esto es muy til ya que nos permite repetir con facilidad operaciones ya realizadas, recuperar comandos para introducir pequeas modificaciones, y archivar lo que hayamos hecho durante una sesin de trabajo en Stata.
Variables Esta ventana nos muestra una lista de las variables que contiene nuestra base de datos, as cmo sus etiquetas. Esto nos permite seleccionarlas (mediante un dobre clic) para usarlas en nuestros comandos sin necesidad de memorizar o escribir los nombres de todas ellas.
3 Curso de introduccin a Stata J ordi Muoz (UAB)
Explorador/editor de datos Esta ventana nos muestra nuestra base de datos. La podemos abrir con dos funciones: editor o navegador. En la primera la podremos modificar mientras que en la segunda no ser necesario. Es util generalmente para inspeccionar nuestra base de datos y ver que informacin tenemos y cmo est organizada, aunque habitualmente no la usaremos.
4 Curso de introduccin a Stata J ordi Muoz (UAB)
Do-file editor Esta ventana en realidad es un editor de textos simple, similar al bloc de notas de windows, en el que podremos crear, modificar, abrir y ejectuar archivos de sintaxis de Stata.
Log viewer La ventana de resultados graba slo una pequea parte de los resultados que va produciendo el programa, as que si queremos conservar todos los resultados de nuestra sesin de trabajo debemos abrir un archivo log, que podremos ver y copiar desde esta ventana.
Ayuda La ventana de ayuda (que abrimos mediante el men o mediante la orden hel p en la lnea de comando nos ofrece ayuda sobre todos los comandos y funciones de stata
Mens Como cualquier programa windows, mediante los mens de la parte superior de la pantalla, podemos abrir multitud de cuadros de dilogo que nos permitirn realizar una parte sustancial de los procedimientos de Stata. Sin embargo, en la mayora de los casos, utilizaremos la sintaxis y los mens sern slo subsidiarios.
Tipos de archivos bsicos en Stata:
Datos (.dta) Los datos que utilizaremos en stata los guardaremos en formato .dta, que es el formato propio de Stata. De todos modos, Stata tiene la capacidad de importar datos en muy diversos formatos (Excel, SPSS, ASCII, CSV, etc) as que con un poco de trabajo podremos abrir la mayora de las bases de datos.
5 Curso de introduccin a Stata J ordi Muoz (UAB) Sintaxis (.do) Los archivos de sintaxis se guardan en formato do, y por eso los conocemos cmo do- files. En realidad son meros archivos de texto que podemos editar en mltiples programas, pero nos sirven para conservar la sintaxis de nuestro trabajo.
Output (.log) Si queremos conservar los resultados lo podemos hacer en un log file. Podemos elegir dos tipos, aunque el ms recomendable es .log, que no tiene formato y nos garantiza compatibilidad con otros editores de textos.
Extensiones (.ado) Son uno de los puntos fuertes de Stata. Los usuarios, con relativa facilidad, pueden escribir funciones y comandos nuevos y distirbuirlos gratuitamente. De este modo, la potencia del programa se multiplica, ya que all donde la distribucin oficial no llega, s lo hacen los usuarios. Durante el curso aprenderemos a buscar e instalar archivos ado que nos permitiran realizar funciones que no vienen por defecto en el programa.
Recursos para usuarios de Stata
Stata es un programa de uso extendido, con lo cual disponemos de mltiples fuentes de ayuda que, cuando sepamos utilizar, nos van a permitir aprender con rapidez nuevos procedimientos y poder realizar operaciones nuevas. Estos recursos los usaremos constantemente, pero durante el proceso de aprendizaje inicial van a resultar especialmente tiles.
Ayuda de Stata: estructura bsica La ayuda de stata es el primer recurso que utilizaremos normalmente. La podemos abrir desde el men ayuda o desde la lnea de comandos usando la orden help. Cada comando de Stata tiene su archivo de ayuda asociado, que tienen noralmente la estructura siguiente:
o Title: Ttulo del archivo de ayuda o Syntax: sintaxis bsica del comando o Options: opciones que acompaan al comando. Normalmente, cada comando tiene asociadas sus opciones que nos permiten flexibilidad en lo que le pedimos al programa. o Menu: Nos indica, si existe, cual es la ruta en el sistema de mens que nos lleva al mismo comando. o Description: Describe brevemente el contenido del comando y lo que realiza o Options: Una descripcin ms detallada de las opciones del comando o Examples: Ejemplos de utilizacin de los comandos, normalmente aplicados a unas bases de datos de muestra que vienen con Stata. Es la parte ms til de la aydua ya que podemos ver, en la prctica, cmo se aplican las diversas posibilidades del comando. o Saved results: Cada vez que realizamos una operacin en Stata, ste guarda en su memoria los resultados, de tal modo que podamos llamarlos para usarlos en operaciones sucesivas. En este apartado de la ayuda se nos indica qu resultados guarda el programa tras cada comando.
Manual de Stata Stata dispone de un muy buen manual en diversos volmenes temticos. Con el programa viene una versin en formato .pdf, que podemos consultar desde el men help PDF documentation. El manual tiene muchsima informacin, y cuando nos habituamos a su estructura, podemos aprender muchsimo usndolo.
Lista de correo http://www.stata.com/statalist/ Las dudas que no podamos resolver con la ayuda o el manual, siempre las podemos consultar a los otros usuarios de Stata mediante la lista de correo. De todos modos, es muy probable que alguien haya tenido ya la misma duda antes, as que antes de escribir a la lista es muy recomendable consultar si ya ha sido resuelto anteriormente.
UCLA http://www.ats.ucla.edu/stat/stata/
6 Curso de introduccin a Stata J ordi Muoz (UAB) UCLA dispone de una web con abundante informacin, muy bien explicada y organizada, sobre aspectos muy diversos relacionados en el uso de Stata, desde manuales hasta vdeos. Navegando por su web encontraremos informacin sobre la mayora de problemas que tengamos.
www.stata.com La web de Stata Corp. Tambin resulta de gran utilidad. Tiene un apartado de support con enlaces, FAQs y una seccin especialmente til llamada Visual overview for creating graphs, que veremos en su momento.
San Google Como con (casi) todo en la vida, si nos queda alguna duda, siempre se la podemos preguntar a google: las probabilidades de que nos la resuelva son muy altas.
Manuales Existen muchos manuales de Anlisis de datos con Stata que podemos consultar. En http://www.stata.com/bookstore/ estn referenciados la mayora de ellos. Algunos de los ms tiles pueden ser los siguientes: o Modesto Escobar Mercado, Enrique Fernndez Macas, and Fabrizio Bernardi Anlisis de datos con Stata Centro de Investigaciones Sociolgicas, Cuadernos Metodolgicos o Philip H. Pollock III A Stata Companion to Political Analysis, 2nd Edition CQ Press 2011
La sintaxis de Stata: elementos bsicos
Como ya hemos dicho, en este curso usaremos de modo preferente la sintaxis para relacionarnos con Stata. Antes de empezar a ver ejemplos de comandos bsicos, conviene hacer una pequea introduccin sobre los elementos generales a tener en cuenta sobre la sintaxis de Stata:
Stata habla ingls Aunque de entrada nos pueda parecer complejo, el lenguaje con el que nos relacionaremos con Stata es sencillo puesto que, en lo esencial, es ingls. As, si queremos un resumen de una variable le diremos al programa summar i ze, si queremos una tabla, t abul at e, si queremos una regresin r egr ess, y as sucesivamente. En caso de duda, siempre podemos provar.
Y distingue maysculas y minsculas!
Estructura bsica de la sintaxis Los comandos en Stata tienen una estructura bsica comn, que podemos resumir del siguiente modo: comando variables subgrupos, opciones
En otras palabras: primero escribiremos el nombre de la accin que queremos que realice el programa, seguido de las variables a las que queremos que se aplique esta orden. Opcionalmente aqu podemos especificar las observaciones a las que queremos aplicar la orden (por defecto se aplican a toda la base de datos) y tras una coma especificaremos las opciones del comando que necesitemos.
Abreviaciones en stata Una caracterstica muy til de Stata pero que al principio puede provocar alguna confusin, es que los comandos, opciones y nombres de variables se pueden abreviar. La norma general es que se permite una abreviacin tan corta como sea posible para identificar sin ambigedad el comando, opcin o variable. Por eso es habitual ver sintaxis de stata en las que el comando summar i ze se substituye por sum, t abul at e por t ab, la variable gender por gend, etc.
7 Curso de introduccin a Stata J ordi Muoz (UAB)
Mltiples variables
Otra caracterstica til del lenguaje de Stata es que mediante el signo * podemos aplicar una orden a un conjunto de variables que compartan un prefijo. Adicionalmente, separando los nombres de dos variables con un guin -, aplicaremos el comando a todas las variables comprendidas entre ambas.
Do-files Cuando escribamos do-files, existen una serie de smbolos que nos resultarn muy tiles: o Comentarios: en nuestros archivos de sintaxis, es conveniente introducir numerosos comentarios para recordarnos lo que estamos haciendo cuando retomemos el trabajo. Por supuesto, no queremos que Stata lea estos elementos, que slo tienen carcter informativo para nosotros mismos. Para eso, podemos usar los siguientes smbolos: Un asterisco (*) al principio de la lnea, convierte toda la lnea en un comentario (representado en verde) El smbolo /* abre un comentario y */ lo cierra o Saltos de lnea: Tres /// le dicen a Stata que el resto de la lnea es un comentario y que el comando sigue en la lnea de abajo.
Inspeccin de datos
Ms adelante veremos cmo importar a Stata datos en formatos diversos, y como abrir archivos desde la lnea de comandos. De momento,abriremos en Stata un archivo de datos usando el men, como con cualquier otro programa de windows. Una vez tenemos abierto el archivo de datos que nos interese, podemos empezar a trabajar con l. La primera tarea a realizar ser la inspeccin de los datos. A continuacin presentamos algunos de los comandos que nos permitiran realizar una inspeccin bsica de nuestra base de datos.
Browse El comando br owse nos permite abrir la ventana de exploracin de datos. Si escribimos br owse en la lnea de comandos, sin especificar nada ms, veremos la base de datos completa. Si, en cambio, queremos restringir la inspeccin a un conjunto de variables (u observaciones) slo tenemos que aplicarlo.
Summarize El comando summar i ze nos proporciona informacin bsica sobre las variables que nos interesen (nmero de observaciones (sin contar los casos perdidos), media, desviacin tpica, mnimo y mximo. Ms adelante veremos ms opciones de este comando.
Tabulate En caso de variables categricas, o de cadena, la orden summarize no funcionar o nos aportar informacin insuficiente o inapropiada. Por ello, usaremos el comando tabulate, para generar tablas de frecuencias que nos informarn de la distribucin de la variable elegida. Por defecto, nos muestra cuantos casos hay en cada categora, el porcentaje que representan y el porcentaje acumulado.
o Tab1: Si queremos aplicar el comando t abul at e a ms de una variable, debemos utilizar la variante t ab1. Esto evitar que Stata intente hacer tablas multidimensionales (de las que hablaremos en su momento).
o Nolabel: Cuando la variable con la que trabajamos est etiquetada, el programa nos ensear por defecto las etiquetas en lugar de los valores. Si queremos saber a qu valor corresponen las distintas categoras, podemos especificar la opcin , nol abel despus del comando t abul at e.
8 Curso de introduccin a Stata J ordi Muoz (UAB) Describe El comando descr i be nos proporciona informacin sobre la(s) variable(s) espeficicadas, como el tipo de variable, el formato en el que est guardada, su nombre y etiqueta. Es til para resumir un conjunto de variables de nuestra base de datos.
Inspect I nspect es un comando que produce mini-histogramas de las variables, til para ver rpidamente su distribucin
Codebook codebook es un comando ms completo que describe aunque precisamente por ese motivo, los resultados que genera son menos compactos. Produce abundante informacin sobre la varibale, los valores que toma, el rango, los casos perdidos, etc.
List l i st es un comando de inspeccin de casos, que nos muestra los valores de las variables especificadas para los casos que escojamos. Si no especificamos que variables queremos, por defecto nos mostrar los valores de todas las variables, igual que para los casos. Si trabajamos con encuestas no es un comando muy til porque no tenemos inters en los casos particulares pero si nuestra base de datos fuese, por ejemplo, de pases o de municipios, entonces s nos interesara.
Lookfor A menudo trabajaremos con bases de datos grandes, con numerosas variables en las que puede resultar difcil orientarnos. Un comando muy til para encontrar las variables que buscamos, o explorar el contenido de una base de datos (siempre que est bin etiquetada) es el comando l ookf or , que funciona como una orden de bsqueda en los nombres y etiquetas de las variables.
Subgrupos Stata por defecto aplicar todas las rdenes a todos los casos de la base de datos. Sin embargo, a menudo nos interesar trabajar solo con una submuestra de ellos, ya sea por razones substantivas o de conveniencia para realizar clculos y transformaciones. Existen diversas instrucciones para precisar a que parte de los datos aplicar cada orden.
If i f es la instruccin principal para definir subgrupos. Usando i f tras un comando aplicaremos la orden anterior slo al subgrupo definido por la expresin lgica que precisemos: se realizar la operacin slo para aquellos casos que cumplan la condicin definida por la expresin lgica. Como i f trabaja con operadores lgicos, se trata de un mecanismo muy potente que nos permite definir casi cualquier tipo de subgrupo que podamos necesitar. As podemos hacer referencia a valores de la misma variable a la que estemos aplicando la orden u otras variables de la base de datos. Podemos combinar condiciones de diversos modos.
Operadores lgicos en stata & y | o ! no ~no >mayor que <menor que >=mayor o igual <=menor o igual que ==igual !=no igual ~=no igual
9 Curso de introduccin a Stata J ordi Muoz (UAB) Diferencia entre = y == en stata Un error frecuente en stata es confundir el uso del operador aritmtico =con el lgico ==. As, cuando queramos expresar una igualdad lgica deberemos usar el dobre signo de igual (==) mientras que el simple (=) lo reservamos para operaciones aritmticas. Con la prctica iremos viendo en que contextos se usa uno u otro.
In Si en lugar de definir una expresin lgica queremos aplicar la orden a un grupo de observaciones definido por su nmero de posicin en la base de datos, usaremos la expresin i n en lugar de i f . Para indicar entre que observaciones queremos aplicar la orden usaremos los nmeros de orden separados por una barra /
By By sirve, no para filtrar los casos como i f , sino para segmentar la ejecucin de la orden y hacerlo por los grupos definidos por la variable que acompae a by. El operador by es uno de los pocos elementos en Stata que rompe con la estructura bsica de la sintaxis, puesto que se escribe delante del comando y no despus como el resto. As, escribiremos by var i abl e ( var i abl e2) : comando
Bysort By requiere que la base de datos est ordenada por la(s) variables(s) que usemos, por economa computacional. A menudo esto no es as, y entonces tenemos dos opciones: o ordenar previamente la base de datos usando la instruccin sor t , o combinar ambas instrucciones en un solo comando usando el comando bysor t , que se usa exactamente igual que by.
Valores perdidos Prcticamente siempre nuestros datos sern incompletos. Es decir: tendremos observaciones para las cuales no dispondremos de toda la informacin de todas las variables. En esos casos hablamos de casos perdidos o valores perdidos. Con Stata podemos trabajar con ellos de diversos modos.
Tipos: .a, .b, etc Stata representa los valores perdidos con un punto (.) De este modo, el programa sabe que aquella celda es un valor perdido y que no debe considerarlo en sus clculos. De todos modos, si queremos distinguir entre diferentes tipos de casos perdidos (no aplicable/ no sabe/ no contesta, etc) podemos usar una letra despus del punto .a, .b, etc. As, podemos definir hasta 27 tipos de valores perdidos.
Inspeccin: la opcin ,missing Por defecto, cuando le pedimos a Stata una tabla de frecuencias de una variable, omite los valores perdidos. Esto, que en general resulta til, a veces puede no interesarnos, puesto que pueden contener informacin interesante. Asi, cuando pidamos una tabla de frecuencias con el comando t abul at e, si aadimos al final del comando la opcin , mi ssi ng el programa considerar y nos mostrar tambin los casos perdidos.
Definicin Para definir valores perdidos usaremos los comandos de recodificacin que veremos en la prxima sesin, dando el valor . (o .a, etc.) a la variable.
Tipos de variables Stata trabaja con distintos tipos de variables, de momento vamos a fijarnos en las dos grandes categorias de variables que podemos encontrar: numricas y de texto o de cadena. Para saber qu tipo de variable es cada una, podemos usar el comando describe, o ver la ventana properties si la tenemos abierta.
Numricas Las variables numricas en stata nos permiten realizar la mayora de operaciones normales, y en el caso que sean variables categricas, podemos asociar etiquetas de
10 Curso de introduccin a Stata J ordi Muoz (UAB)
11 valor a las diferentes categorias de la variable. Existen distintos tipos de variables numricas, de momento slo nos interesa conocerlos e identificarlos: byt e, i nt , l ong, f l oat , doubl e
Cadena (string) Las variables de cadena (denominadas por Stata st r ) contienen texto y no nmeros, con lo cual el tipo de operaciones que podremos realizar con ellas es limitado.