Sesión 2 Introducción a Stata

Anuncio
Sesión 2
Introducción a Stata I
Juan D. Barón
juandbaron@gmail.com
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í
Folder (directorio)
actual aparece aquí
Lista de variables aquí
Comandos se escriben aquí
Status del log
aparece aquí
Resultados se muestran aquí
Status del log de comandos
2
aparece aquí
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
1. Lo básico
•
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:
Borrar un archivo en folder actual:
Mirar el contenido de un archivo:
. dir
. erase miarchivo.xyz
. type mydata.raw
6
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, Stata
la 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
2. Lo básico de Stata
•
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
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
Obs
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
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
+---------------------------------------+
| make
price
mpg
weight |
|---------------------------------------|
| AMC Concord
4,099
22
2,930 |
| AMC Pacer
4,749
17
3,350 |
| AMC Spirit
3,799
22
2,640 |
| Buick Century
4,816
20
3,250 |
| Buick Electra
7,827
15
4,080 |
|---------------------------------------|
| Buick LeSabre
5,788
18
3,670 |
| Buick Opel
4,453
26
2,230 |
| Buick Regal
5,189
20
3,280 |
| Buick Riviera
10,372
16
3,880 |
| 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
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
+---------------------------------------+
| make
price
mpg
weight |
|---------------------------------------|
| Buick Electra
7,827
15
4,080 |
| Buick Riviera
10,372
16
3,880 |
| AMC Pacer
4,749
17
3,350 |
| Buick LeSabre
5,788
18
3,670 |
| Buick Skylark
4,082
19
3,400 |
|---------------------------------------|
| Buick Regal
5,189
20
3,280 |
| Buick Century
4,816
20
3,250 |
| AMC Spirit
3,799
22
2,640 |
| AMC Concord
4,099
22
2,930 |
| Buick Opel
4,453
26
2,230 |
+---------------------------------------+
18
Podemos descartar variables usando el comando drop
. drop price
. list
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
+------------------------------+
| make
mpg
weight |
|------------------------------|
| Buick Electra
15
4,080 |
| Buick Riviera
16
3,880 |
| AMC Pacer
17
3,350 |
| Buick LeSabre
18
3,670 |
| Buick Skylark
19
3,400 |
|------------------------------|
| Buick Regal
20
3,280 |
| Buick Century
20
3,250 |
| AMC Concord
22
2,930 |
| AMC Spirit
22
2,640 |
| Buick Opel
26
2,230 |
+------------------------------+
19
Podemos borrar observaciones con el comando drop in
. drop in 3/4
(2 observations deleted)
. list
1.
2.
3.
4.
5.
6.
7.
8.
+------------------------------+
| make
mpg
weight |
|------------------------------|
| Buick Electra
15
4,080 |
| Buick Riviera
16
3,880 |
| Buick Skylark
19
3,400 |
| Buick Regal
20
3,280 |
| Buick Century
20
3,250 |
|------------------------------|
| AMC Concord
22
2,930 |
| AMC Spirit
22
2,640 |
| Buick Opel
26
2,230 |
+------------------------------+
20
También, podemos borrar observaciones con el comando drop if
. drop if mpg<20
(3 observations deleted)
. list
1.
2.
3.
4.
5.
+------------------------------+
| make
mpg
weight |
|------------------------------|
| Buick Regal
20
3,280 |
| Buick Century
20
3,250 |
| AMC Concord
22
2,930 |
| AMC Spirit
22
2,640 |
| Buick Opel
26
2,230 |
+------------------------------+
21
Podemos crear nuevas variables con el comando generate
. generate m_per_lb = mpg/weight
. list
1.
2.
3.
4.
5.
+-----------------------------------------+
| make
mpg
weight
m_per_lb |
|-----------------------------------------|
| Buick Regal
20
3,280
.0060976 |
| Buick Century
20
3,250
.0061538 |
| AMC Concord
22
2,930
.0075085 |
| AMC Spirit
22
2,640
.0083333 |
| 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
¿Cuales son las opciones de un comando y su sintaxis específica?
. help summarize
25
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 operativo
pwd, 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 datos
describe, 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, replace
27
3. Buscando ayuda
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
29
.
update query
.
help summarize
.
search violin, all
.
.
sysuse auto, clear
violin price weight trunk
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
Descargar