1
Introducción al Introducción al StataStata 99
Economía de la salud 2008Economía de la salud 2008(Clases Prácticas)(Clases Prácticas)
Agradezco las transparencias 7,8,17 y 20 cedidas por Juan R Garcia (BBVA)
Madrid, Noviembre del 2007
Aspectos Generales
2
Descripción:Descripción:• Stata es un programa estadístico disponible para
aplicaciones en Windows 2000 y XP. Hay versiones para Macintosh y Unix.
• Está diseñado para el análisis descriptivo de datos y la implementación de diferentes técnicas de estimación.
• Stata distingue entre mayúsculas y minúscula de forma que las variables var1 y Var1 son distintas.
Ventajas:Ventajas:
1.Fácil de usar.
2. Rapidez y homogeneidad de comandos en plataformas.
3. Portabilidad de los datos entre plataformas.
4. Gran uso en investigación.
3
Versiones:Versiones:
Stata/SE: capacidad para 32,766 variables; la cantidad de observaciones está limitada por la memoria del ordenador; las variables de texto tienen un máximo de 244 caracteres.
Intercooled Stata: Versión Profesional; más rápida; máximo de 2,047 variables; las observaciones están limitadas por la memoria del ordenador
Small Stata: Versión para ordenadores pequeños. Máximo de 99 variables y 1000 observaciones.
Extensiones comunes de los ficheros:Extensiones comunes de los ficheros:
.dta: ficheros de datos en formato Stata.
.raw: ficheros de datos ASCII/Text.
.log: output de STATA.
.do: fichero de comandos.
.gph: Stata Graphic File.
.ado: Stata “Macro” files.
4
Empezando la sesión:Empezando la sesión:1. Seleccionar el programa del menú de inicio de Windows ó hacer doble clic
en un archivo Stata data File (.dta)
2. La pantalla de inicio de Stata es la siguiente:
Organización:Organización:
Hay cuatro ventanas:Hay cuatro ventanas:
Ventana Stata command: Se introducen los comandos
Ventana Review: presenta los comandos escritos con anterioridad
Ventana Stata Results: muestra los resultados derivados de dichos comandos.
Ventana de Variables: Muestra los nombres de las variables que se están utilizando en la base de datos
En la esquina inferior izquierda aparece la información sobre el directorio donde está trabajando actualmente.
5
La barra de herramientas:La barra de herramientas:
El directorio de trabajoEl directorio de trabajo
El directorio que por defecto utiliza Stata es: C:\data
Para saber en que directorio estamos : cd
Para cambiar el directorio : cd “C:\CursoStata\”
Crear un directorio nuevo : mkdir “C:\CursoStata\”
6
Abrir y guardar archivos Abrir y guardar archivos statastata ..dtadta
Abrir un fichero de datos use filename.dta [, clear]use filename use C:\DATA\filename.dta
Guardar un fichero de datos save filename.dta [, replace]
save filename save C:\DATA\filename.dta
Uso de memoria Uso de memoria
Por defecto, la memoria con la que trabajamos es de 1024K. Si la base de datos que vamos a manejar es muy grande, podemos incrementar los recursos de memoria con el comando set memory.
set memory 20000
o
set memory 20m
Cualquiera de los dos comandos establece 20 mb de memoria
7
Comando de ayudaComando de ayuda
Mediante la instrucción help comando
se obtiene la ayuda referente al comando que hemos escrito después de help.
Comando de ayudaComando de ayuda
8
Extensiones comunes de los ficheros:Extensiones comunes de los ficheros:
Archivos .log
y archivos .do
Los ficheros Log para reproducir Los ficheros Log para reproducir RdosRdos..
El fichero .log es un archivo de salida, en el que se almacenarán los resultados.
El comando
log using salidas [, append replace ]
abre un fichero llamado salidas.log donde se almacenarán los resultados.
El comando log close cierra el fichero de salida que hemos abierto.
9
Los ficheros Log para reproducir Los ficheros Log para reproducir RdosRdos..
Los ficheros .do.Los ficheros .do.
Hay dos modos de trabajar en Stata:
1.Escribiendo instrucciones en la línea de comandos y viendo el resultado por pantalla sin guardarlo.
2. Mediante ficheros .do. Esta es la forma óptima de trabajar.
10
Los ficheros .do.Los ficheros .do.
Un fichero .do es un fichero de texto ASCII que contiene un conjunto de comandos e instrucciones de Stata que serán ejecutados con el comando do seguido del nombre del fichero.
Podemos crear un fichero .do con el editor de Stata o con cualquier editor de texto.
Los ficheros .do.Los ficheros .do.
11
Los ficheros .do.Los ficheros .do.
Gestión de datos
12
Importar archivos a Importar archivos a statastata: : infileinfile -- insheetinsheet
Los comandos que permiten leer datos en formato ASCII son:
1. Infile: lectura sin formato o con formato de ficheros ASCII
2. Infix: lectura con el format de un diccionario
3. Insheet: lee datos desde un archivo auxiliar de formato fijo. La lectura se puede hacer a través de un diccionario.
Importar archivos a Importar archivos a statastata: : InsheetInsheet
Insheet: lectura de datos en formato texto (ASCII).
Los datos pueden estar separados por tabs o comas pero no ambos al mismo tiempo.
No pueden estar separados por espacios
.
insheet using “InsheetExample.raw”
13
Importar archivos a Importar archivos a statastata: : InsheetInsheet
.
Importar archivos a Importar archivos a statastata: : infileinfile
Infile:
lectura sin formato o con formato de ficheros ASCII
. Fixed Format: Los datos deben estar en formato fijo por columna. Se utiliza un diccionario para importar los datos.
infix id 1-2 a1 3-4 t1 5-6 gender 7 a2 8-9 t2 10-11 tgender 12-14 using InfixExample.txt
14
Importar archivos a Importar archivos a statastata: : infileinfile FixedFixedFormatFormat
.
Listado de comandos útiles:Listado de comandos útiles:cd
dir or ls
insheet
infile
infix
input
describe
compress
save
use
clear
memory
set memory
Cambiar el directorio
Muestra los archivos existentes en el directorio
Lee ASCII (text) data con formato
Lee ASCII (text) data sin formato
Lee ASCII (text) data in fixed format
Enter data a mano
Describe los contenidos de los datos en la memoria virtual
Comprime los datos - utilizar eficientemente el espacio
Guarda el archivo
use Abre un archivo en formato .dta
Borra toda la base
Reporta la memoria que está siendo usada
Setea la cantidad de memoria virtual a ser utilizada
15
Manejo de datos
La base de datos
16
Describir la base: describe [varlist] [, short detail]
Describir las variables: codebook [varlist]
17
Describir las variables: inspect [varlist]
Formatos Resumen:
Variables de texto (Variables de texto (StringString) )
Las variables con formato texto son guardadas como str#. Ej str1, str2,…..str244. El número indica la longitud de la vble string. Es decir que str5 puede contener “male” pero no “female” ya que esta última tiene 6 caracteres.
Variables NuméricasVariables Numéricas
Las variables numericas se guardan como byte, int, long, float, or double El default es float. Byte, int and long son para valores enteros.
18
Formatos Resumen:
• Pueden contener: •un signo NEGATIVO (-100),•un punto decimal (1.1) •notación exponencial (1.1e+2)
• No pueden contener comas
• Missing se representan con “.” y representan el mayor valor positivo de una variable
Variables NuméricasVariables Numéricas
Formatos: transformar vbles string en numéricas y viceversa
Encode: Crea una nueva variable transformando el formato texto en numérico.
Decode: Crea una nueva variable transformando el formato numérico en texto.
Sintaxis: encode varname [if] [in] , generate(newvar) [label(name) noextend]
Destring: Convierte vbles de texto en numéricas
Totstring: Viceversa
destring/ totsting [varlist] , {generate(newvarlist)|replace} [destring_options]
Otros comandos:
19
Etiquetas-Labels
•label data : etiqueta la base de datos que está en la memoria (máx 80 caracteres).Etiquetas-Labels
•label variable: Etiqueta las variable.
•label define: Asocia los valores de la variable a un texto determinado. Para quelos guarde asociados hay que utilizar label values.
•label values: asocia y guarda el texto asociado a los valores definidos en label define.
•label drop: elimina las etiquetas. Etiquetas-Labels
•label dir: lista el nombre de las variables que tienen etiqueta
• label list: lista los nombres de las variables el valor que tienen y el textoasociado Etiquetas-Labels
Etiquetas-Labels
Label data
Etiquetas-Labels
20
Comandos
Que describen los datos pero nos los modifican: des, tab, sum, list , graphs, etc.
Que modifican la base de datos: gen, egen, replace, drop, recode,etc
Sintaxis del lenguajeLos comandos de stata siguen una sintaxis común. El cuadro siguiente muestracomo escribir los comandos.
21
Sintaxis del lenguaje: Ejemplos
Sintaxis del lenguaje: by….
22
Sintaxis del lenguaje: Varlist….
myvar1, myvar2, ..., myvar6 (probably)myvar1-myvar6
Una variable que comienza con my y culmina con varcon un carácter en mediomy?var
Una variable que comienza con my y culmina con varmy~var
variables que empiezan con my y terminan con varmy*var
Todas las variables que terminan con myvar*var
Todas las variables que empiezan con myvarmyvar*
Tres variablesmyvar thisvar thatvar
Una variable: myvarmyvar
Análisis descriptivo: comandos
count[by varlist:] count [if exp] [in range] ///////Número de obs // No permite varlist
summarize[by varlist:] summarize [varlist] [weight] [if exp] [in range] [, detail ]
23
Análisis descriptivo: tabulate
Tablas de una entrada: [by varlist:] tabulate varname [weight] [if exp] [in range] [, generate(varname) missing nofreq nolabel…]
Tablas de frecuencias (absolutas y relativas) y medidas de asociación entre celdas
Análisis descriptivo: tabulate
Tablas de doble entrada: [by varlist:] tabulate var1 var2 [weight] [if exp] [in range] [, cell column missing nofreq nolabel row…]
24
Análisis descriptivo: tabulate
Tablas 3 dimensiones: instalarlo
Análisis descriptivo: tabulateTablas 3 dimensiones:
25
Análisis descriptivo: table
Table:[by varlist:] table rowvar [colvar [supercolvar]] [if exp] [in range] [weight] [,contents(estad. varname...) by(superrow_varlist) row col missing…]
Tabla de estadísticos descriptivos
Análisis descriptivo: tableTabla de estadísticos descriptivos
26
Manipulación de datos:
Manipulación de datos:
27
Gráficos
Gráficos:
Se puede utilizar la orden graph o la barra de herramientas graphics
graph twoway connected var1 var2 , saving(grafico1,replace)graph twoway scatter var1 var2 var3, saving(grafico2,replace) graph twoway line var1 var2 if va3==1 graph pie var3 var5
Ver opciones gráficos en el menú de ayuda
28
Estimación
Mínimos Cuadrados Ordinarios (MCO)
Comando:
regress (nombre variable dependiente) ( nombre variables independientes) ,opciones
regress var1 var2 var3 , robust
Se puede combinar con by y con if
regress var1 var2 var3 , robust if salud==1
bysort año: regress var1 var2 var3 , robust
Matriz de Var y Covarianzas de los estimadores: vce
Predecir: Predict
29
Variables instrumentalesComando:
ivreg (nombre variable dependiente) ( nombre variables independientes) ,opciones
ivreg var1 (var2 var3=instr1 instr2)
Variable dependiente Variable Independiente
Variable a instrumentar
Instrumentos
Regresiones sucesivas
Nombres a listas de variables.
global regresores “var2 var3 var4 ”regress var1 $regresores
local regresores “var2 var3 var4 ”regress var1 $regresores