sesión 2 introducción a stata - econreg.pbworks.comeconreg.pbworks.com/f/sesión02.pdf · barra...
TRANSCRIPT
Sesión 2
Introducción a Stata I
Juan D. Barón [email protected]
Métodos Cuantitativos en Economía Regional y Urbana
Universidad Autónoma de Occidente
25 de abril de 2011
Versión : 1.2
Copyright © 2011: La reproducción total o parcial de este material está prohibida
Material provisional y sujeto a cambios
Comandos anteriores aparecen aquí Lista de variables aquí Resultados se muestran aquí
Comandos se escriben aquíFolder (directorio) actual aparece aquí
Status del log aparece aquí
Status del log de comandos aparece aquí
2
Barra de herramientas
• Open: Abrir una base de datos en formato de Stata
• Save: Guardar datos en memoria en formato de Stata al disco duro
• Print Results: Imprimir la ventana de resultados
• Log: Empezar, suspender, continuar un archivo log
• Viewer: Abrir el viewer (ayudas)
• Graph: Traer una gráfica al frente de todas las ventanas
• Do-file editor: Abrir el editor de “do-files” (archivos de extensión .do)
• Data editor (Edit): Abrir el editor de datos
• Data Editor (Browse): Editor de datos en modo de visor de datos
• Variables Manager: Abrir el administrador de variables (características)
• Clear----more--- Condition: Continuar cuando Stata hace una pausa
• Break: Detener la ejecución de una tarea en Stata.
3
• Temas de computación, simples pero importantes
• Comandos de Stata que interactúan con el sistema operativo
(pwd, cd, sysdir, mkdir, dir, erase, copy, type)
• IMPORTANTE
– Cuando usted crea un archivo llamado miarchivo.xyz
– miarchivo.xyz NO es el nombre del archivo, es una abreviatura
– El nombre completo es algo así como c:\juan\miarchivo.xyz
(dependiendo de el lugar donde se encuentre el archivo)
5
1.1 Directorios para organizar su trabajo
¿En que folder está cuando inicia Stata?
Para saber use: . pwd
Directorio oficial de Stata: . sysdir
Guarde los archivos del curso en c:\utbpublica\sesion01
Cambiar a directorio raíz: . cd c:\
Cree nuevo folder: . mkdir utbpublica
Cambie al nuevo directorio: . cd utbpublica
Cree el folder de sesión 1: . mkdir sesion01
Otros comandos
Listar archivos en folder actual: . dir
Borrar un archivo en folder actual: . erase miarchivo.xyz
Mirar el contenido de un archivo: . type mydata.raw6
1.2 Nombres de archivo en Stata
• En muchas instancias se debe especificar el nombre de un archivo
• Cuando se usa la abreviatura, miarchivo.xyz, Stata asume que se encuentra en el folder actual
• Equivalentes:
. use miarchivo.xyz
. use c:\utbpublica\sesion01\miarchivo.xyz
• Si no se incluye la extensión, Stata asume que el archivo tiene extensión .dta (base de datos tipo Stata)
IMPORTANTE: Espacios en nombres de archivos
Si un nombre de archivo (eso incluye la dirección) tiene espacios, se deben usar dobles comillas al principio y al final del nombre
. use “c:\Mis Documentos\utbpublica\sesion01\miarchivo.xyz”
7
1.3 Cargar base de datos de carros
• Stata trae bases de datos para usar de ejemplos y probar el comportamiento de comandos rápidamente
• La más conocida es la que se conoce con la abreviatura auto.dta
• Se encuentra en el directorio oficial de Stata(use pwd para ver dónde está ese directorio)
• Un atajo para cargar esta base de datos (sin cambiar al directorio de sistema) es:
. sysuse auto, clear
• La opción clear hace que si ya hay una base de datos en memoria, Statala descarte y cargue la base de datos auto. Si no se especifica esta opción, saldrá un error si hay una base de datos en memoria
8
• Stata: administración de datos, análisis estadístico, gráficos
• Stata ofrece interfaces para reproducir cualquier comando, pero es
básicamente manejado por comandos de texto
• Si escribe en la línea de comando (no digite el punto):
. summarize mpg
• Stata responde con:
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
mpg | 74 21.2973 5.785503 12 41
• La regla en Stata: Digite poco, obtenga poco
• IMPORTANTE | En Stata los datos se cargan a la memoria y se
trabaja con ellos. No se cambia la base de datos original hasta que
se graba (save)
10
Usando bases de datos tipo Stata
• Para cargar una base de datos en formato Stata, use el comando
. use archivo
O,
. use archivo, clear
Si usa la primera opción y hay una base de datos en memoria verá:. use archivo
no; data in memory would be lost
r(4);
• Para grabar los datos que están en memoria use:
. save miarchivo
Si el archivo ya existe en el folder, el comando anterior no grabará el
archivo y dará un error. Para sobrescribir la base de datos
use la opción replace. Así:
. save miarchivo, replace
11
2.1 Como Stata entiende los datos
• El concepto de datos en Stata es el de una tabla
• Columnas son las variables
• Filas son las observaciones
• Para referirse a una celda específica se usarán dos notaciones:
mpg[6]
mpg in 6
. display mpg[6]
18
Variables
make price mpg weight
Obs
1 AMC 4099 22 2930
2 AMC Pacer 4749 17 3350
3 AMC Spirit 3799 22 2640
4 Buick Century 4816 20 3250
5 Buick Electra 7827 15 4080
6 Buick LeSabre 5788 18 3670
7 Buick Opel 4453 26 2230
8 Buick Regal 5189 20 3280
9 Buick 10372 16 3880
10 Buick Skylark 4082 19 3400
12
La base de datos se puede resumir con el comando describe
Contains data from C:\Archivos de programa\Stata10\ado\base/a/auto.dta
obs: 74 1978 Automobile Data
vars: 12 13 Apr 2007 17:45
size: 3,478 (99.9% of memory free) (_dta has notes)
--------------------------------------------------------------------------
storage display value
variable name type format label variable label
--------------------------------------------------------------------------
make str18 %-18s Make and Model
price int %8.0gc Price
mpg int %8.0g Mileage (mpg)
rep78 int %8.0g Repair Record 1978
headroom float %6.1f Headroom (in.)
trunk int %8.0g Trunk space (cu. ft.)
weight int %8.0gc Weight (lbs.)
length int %8.0g Length (in.)
turn int %8.0g Turn Circle (ft.)
displacement int %8.0g Displacement (cu. in.)
gear_ratio float %6.2f Gear Ratio
foreign byte %8.0g origin Car type
---------------------------------------------------------------------------
Sorted by: foreign
13
Los datos se pueden listar con el comando list
. list price mpg weight
+---------------------------------------+
| make price mpg weight |
|---------------------------------------|
1. | AMC Concord 4,099 22 2,930 |
2. | AMC Pacer 4,749 17 3,350 |
3. | AMC Spirit 3,799 22 2,640 |
4. | Buick Century 4,816 20 3,250 |
5. | Buick Electra 7,827 15 4,080 |
|---------------------------------------|
6. | Buick LeSabre 5,788 18 3,670 |
7. | Buick Opel 4,453 26 2,230 |
8. | Buick Regal 5,189 20 3,280 |
9. | Buick Riviera 10,372 16 3,880 |
10. | Buick Skylark 4,082 19 3,400 |
<Output omitido>
14
Estadísticas básicas se pueden obtener con el comando summarize
. summarize
Variable | Obs Mean Std. Dev. Min Max
-------------+--------------------------------------------------------
make | 0
price | 74 6165.257 2949.496 3291 15906
mpg | 74 21.2973 5.785503 12 41
rep78 | 69 3.405797 .9899323 1 5
headroom | 74 2.993243 .8459948 1.5 5
-------------+--------------------------------------------------------
trunk | 74 13.75676 4.277404 5 23
weight | 74 3019.459 777.1936 1760 4840
length | 74 187.9324 22.26634 142 233
turn | 74 39.64865 4.399354 31 51
displacement | 74 197.2973 91.83722 79 425
-------------+--------------------------------------------------------
gear_ratio | 74 3.014865 .4562871 2.19 3.89
foreign | 74 .2972973 .4601885 0 1
15
Se pueden dejar solo las variables price mpg y weight en la base de
datos con el comando keep
. keep make price mpg weight
. describe
Contains data from C:\Archivos de programa\Stata10\ado\base/a/auto.dta
obs: 74 1978 Automobile Data
vars: 4 13 Apr 2007 17:45
size: 2,072 (99.9% of memory free) (_dta has notes)
---------------------------------------------------------------------------
storage display value
variable name type format label variable label
---------------------------------------------------------------------------
make str18 %-18s Make and Model
price int %8.0gc Price
mpg int %8.0g Mileage (mpg)
weight int %8.0gc Weight (lbs.)
---------------------------------------------------------------------------
Sorted by:
Note: dataset has changed since last saved
16
Se pueden dejar solo algunas observaciones y descartar las demás
usando el comando keep
. keep in 1/10
(64 observations deleted)
. list
+---------------------------------------+
| make price mpg weight |
|---------------------------------------|
1. | AMC Concord 4,099 22 2,930 |
2. | AMC Pacer 4,749 17 3,350 |
3. | AMC Spirit 3,799 22 2,640 |
4. | Buick Century 4,816 20 3,250 |
5. | Buick Electra 7,827 15 4,080 |
|---------------------------------------|
6. | Buick LeSabre 5,788 18 3,670 |
7. | Buick Opel 4,453 26 2,230 |
8. | Buick Regal 5,189 20 3,280 |
9. | Buick Riviera 10,372 16 3,880 |
10. | Buick Skylark 4,082 19 3,400 |
+---------------------------------------+
17
Podemos cambiar la información. Podemos ordenarla por una variable
usando el comando sort
. sort mpg
. list
+---------------------------------------+
| make price mpg weight |
|---------------------------------------|
1. | Buick Electra 7,827 15 4,080 |
2. | Buick Riviera 10,372 16 3,880 |
3. | AMC Pacer 4,749 17 3,350 |
4. | Buick LeSabre 5,788 18 3,670 |
5. | Buick Skylark 4,082 19 3,400 |
|---------------------------------------|
6. | Buick Regal 5,189 20 3,280 |
7. | Buick Century 4,816 20 3,250 |
8. | AMC Spirit 3,799 22 2,640 |
9. | AMC Concord 4,099 22 2,930 |
10. | Buick Opel 4,453 26 2,230 |
+---------------------------------------+
18
Podemos descartar variables usando el comando drop
. drop price
. list
+------------------------------+
| make mpg weight |
|------------------------------|
1. | Buick Electra 15 4,080 |
2. | Buick Riviera 16 3,880 |
3. | AMC Pacer 17 3,350 |
4. | Buick LeSabre 18 3,670 |
5. | Buick Skylark 19 3,400 |
|------------------------------|
6. | Buick Regal 20 3,280 |
7. | Buick Century 20 3,250 |
8. | AMC Concord 22 2,930 |
9. | AMC Spirit 22 2,640 |
10. | Buick Opel 26 2,230 |
+------------------------------+
19
Podemos borrar observaciones con el comando drop in
. drop in 3/4
(2 observations deleted)
. list
+------------------------------+
| make mpg weight |
|------------------------------|
1. | Buick Electra 15 4,080 |
2. | Buick Riviera 16 3,880 |
3. | Buick Skylark 19 3,400 |
4. | Buick Regal 20 3,280 |
5. | Buick Century 20 3,250 |
|------------------------------|
6. | AMC Concord 22 2,930 |
7. | AMC Spirit 22 2,640 |
8. | Buick Opel 26 2,230 |
+------------------------------+
20
También, podemos borrar observaciones con el comando drop if
. drop if mpg<20
(3 observations deleted)
. list
+------------------------------+
| make mpg weight |
|------------------------------|
1. | Buick Regal 20 3,280 |
2. | Buick Century 20 3,250 |
3. | AMC Concord 22 2,930 |
4. | AMC Spirit 22 2,640 |
5. | Buick Opel 26 2,230 |
+------------------------------+
21
Podemos crear nuevas variables con el comando generate
. generate m_per_lb = mpg/weight
. list
+-----------------------------------------+
| make mpg weight m_per_lb |
|-----------------------------------------|
1. | Buick Regal 20 3,280 .0060976 |
2. | Buick Century 20 3,250 .0061538 |
3. | AMC Concord 22 2,930 .0075085 |
4. | AMC Spirit 22 2,640 .0083333 |
5. | Buick Opel 26 2,230 .0116592 |
+-----------------------------------------+
22
2.2 Sintaxis de los comandos de Stata
Los comandos en Stata se clasifican en dos categorías:
1. Comandos que reportan cosas sobre los datos (describe, list, sum)
2. Comandos que cambian los datos (use, drop, generate, …)
. comando variables if exp in range [, opciones]
comando: Lo que debe hacer Stata (summarize, list, save, etc)
variables: Las variables a usar. variables es opcional en algunos comandos. En esos aplica a todas las variables. Ej.: list mpg price Ej.: list
if exp: Si no se especifica significa que el comando se ejecuta para todas las
observaciones. Ej.: list mpg weight if mpg>20 Ej.: list if mpg==20
in range: Hace lo mismo que if exp pero especifica la restricción en términos de
los números de observación. Ej.: list mpg weight in 1/10
Ej.: list mpg weight if mpg>20 in 1/10
23
Ejemplos de sintaxis
Comando de resumen de una variables (summarize)
. summarize price
Comando de resumen de una variable con más detalle (summarize)
. summarize price, detail
Comando de regresión lineal sin constante (regress)
. regress price mpg weight, nocon
Comando de regresión lineal (regress)
. regress price mpg weight
Comando de nube de puntos (scatter)
. scatter mpg weight
24
2.3 Comandos que todo usuario deberían saber
Categoría Comandos de Stata
Obtener ayuda en línea search, findit, help
Interface del sistema operativopwd, cd, sysdir, mkdir, dir, erase, copy,
type
Usando y salvando datos del disco use, save, append, merge, compress
Importando datos a Stata input, edit, infile, infix, insheet
Internet y actualizaciones de Stata update, net, ado, news
Reportes básicos de datosdescribe, codebook, list, browse, count,
inspect, summarize, table, tabulate
Manipulación de datos
generate, replace, egen, rename, drop,
keep, sort, encode, decode, order, by,
reshape
Formatos format, label
Keeping track of your work log, notes
Convenientes display
Para la ayuda digite, help y el comando deseado: . help comando
26
2.4 Trabajando interactivamente
• !Organicese¡ En su computador (i) cree una nueva carpeta llamada
utbpublica, (ii) abra Stata, (iii) Cambie a ese directorio (cd). En mi
caso:
. cd “D:\Datos\My Dropbox\UTBPublica”
• Una vez hizo esto (i) use el comando dir para ver que hay en ese
directorio, (ii) use el comando pwd para ver en donde se encuentra. dir
<dir> 6/03/03 15:21 .
<dir> 6/03/03 15:21 ..
. pwd
D:\Datos\My Dropbox\UTBPublica
• Guarde notas con sus bases de datos (comando note)
. note: Primer ejemplo de notas en clase UTBPublica
. notes
. save auto, replace27
29
El Viewer de Stata se puede:
• Ver contenidos de ayuda (comando help)
• Buscar documentación (comando search)
• Buscar material de ayuda en línea (comando search)
• Encontrar e instalar programas escritos por otros usuarios
• Instalar actualizaciones de Stata (comado update query)
• Ver las últimas noticias de www.stata.com
Resumen
Hasta aquí usted debe ser capaz de:
• Averiguar en que directorio está
• Cambiar del directorio actual a cualquier otro directorio en su disco
• Entender las implicaciones de trabajar en un directorio
• Organizar futuros análisis (manteniendo fólderes diferentes para
diferentes proyectos)
• Cargar y grabar datos (en formato de Stata .dta)
• Usar la lista de comandos que los usuarios de STATA deberían saber
• Usar help , search y update para encontrar información y
documentación
• Listar parte o todos sus datos
• Crear y leer notas adjuntas a su base de datos
36