Está en la página 1de 7

Estadstica Aplicada

STATA Clase 03
Crear y modificar variables
Comandos gen | egen | replace | rename
Ejemplos 1 y 2 Tipos de variables y precisin
Ejemplo 3 Diferenciar [in] e [if] de condiciones en [=exp]
Ejemplo 4 Sumar, contadores e identificadores
Etiquetas de variables y de valores
Comandos label var | label define | label values | label list | label drop
Ejemplo 5 Etiquetar una variable y sus valores
Ejercicio adicional Curva de Lorenz
Crear y modificar variables
Crea una variable
[bys varlist:] generate [type] newvar =exp [if] [in]
[bys varlist:] egen [type] newvar = function(arguments) [if] [in] [, options]
type: byte|int|long|float|double|str#
Para cambiar el tipo numrico por defecto: set type {float|double} [, perm]
Funciones para gen (help function) y para egen (help egen). [bys varlist] para algunas funciones:
gen: [bys] sum() _n _N inlist() inrange() [no bys] substr() real() floor() runiform() rnormal() invnormal() round() ln()
egen: [bys] total() count() mean() [no bys] group() std() concat() rowtotal() rowmean() y otras row

Reemplaza el contenido de una variable existente [bys varlist:] replace oldvar =exp [if] [in]

Cambia el nombre de una variable rename old_varname new_varname


Para cambiar todas a NOMBRE|nombre|Nombre: rename _all , {upper|lower|proper}

2
Ejemplos - tipos y vacos
Ejemplo 1 Cree las siguientes variables:
ejem1 int vaco
ejem2 str4 vaco
ejem3 byte 1 si trabaja ms de 40 horas en su ocupacin principal 0 de otro modo
ejem4 float log del ingreso por hora en ocupacin principal
ejem5 double log del ingreso por hora en ocupacin principal
Note la diferencia de precisin (nmero de decimales) entre las variables ejem4 y ejem5
Cambie la variable numrica por defecto a double (permanentemente)

Ejemplo 2 Realice las siguientes modificaciones:


Reemplace el contenido de ejem1 por: un nmero aleatorio Note el mensaje en zona resultados
Para fijar los nmeros aleatorios que se obtienen: set seed #
Reemplace el contenido de ejem2 por: hola
Borre la variable ejem4
Cambie el nombre de la variable ejem5 por ejem4
Borre todas las variables que cre

3
Ejemplos in, if y condiciones
[in] e [if] restringen las observaciones modificadas
[=condicin] crea dummys: 1 si la condicin es verdadera 0 si es falsa
Note cundo se usa = (para expresiones: algo=exp) e == (para condiciones: algo==algo)
Pruebe las funciones inlist() e inrange() al plantear las condiciones

Ejemplo 3 Cree las siguientes variables:


=exp | =condicin [in] [if]
ejem1 log ingreso por hora en ocupacin principal (ing1) obs 1 a 25
ejem2 1 si es mujer y de selva o sierra, 0 de otro modo
ejem3 log ingreso por hora en ocupacin secundaria (ing2) mujer y (selva o sierra)
Preste atencin a lo que ocurre con los missings en ejem4 y ejem5
ejem4 1 si ing2 es mayor a 5, 0 de otro modo mujer y (selva o sierra)
ejem5 1 si ing1 o ing2 es mayor a 5, 0 de otro modo mujer y (selva o sierra)
Borre todas las variables que cre

4
Ejemplos sumar, contar e identificar
Ejemplo 4 Cree las siguientes variables
[bys] =exp
ejem1 nmeros correlativos para todas las observaciones
ejem2 total de observaciones
horas_sem horas trabajadas a la semana (ocup principal y secundaria)
muj_reg identificadores por mujer y region, ejemplo: 1 si es hombre en
costa, 2 si es hombre en sierra, , 4 si es mujer en costa,
nobs_mr muj_reg nmero de individuos en cada grupo
id_mr muj_reg identificadores de individuo para cada grupo definido
horas_tot total de horas trabajadas por todos los individuos de la muestra
horas_tot_mr muj_reg total de horas trabajadas por todos los individuos en cada grupo
horas_acu suma acumulada de las horas trabajadas que empiece por los
individuos que trabajaron menos horas
horas_acu_mr muj_reg suma acumulada por grupo de las horas trabajadas que empiece
por los individuos que trabajaron menos horas en cada grupo

5
Etiquetas de variable y de valores
Asocia una etiqueta a la variable
label variable varname ["label"]
Asocia etiquetas a los valores de una variable
label define lblname # "label" [# "label" ...]
label values varlist lblname
Definir las etiquetas no basta (define), no olvidar asignarlas (values)
Para listar todas las etiquetas en memoria: label list o borrar alguna: label drop lblname

Ejemplo 5 Etiquete la variable esformal


La etiqueta de la variable es "Sector al que pertenece la ocupacin principal
label variable esformal "Sector al que pertenece la ocupacin principal
La etiqueta de los valores es informal si es 0 y formal si es 1
label define etiquetita 1 "Formal" 0 "Informal"
label values esformal etiquetita

6
Ejercicio adicional Curva de Lorenz
Use clase03_ejemplo.dta y cree las siguientes variables:
acu_ing Distribucin acumulada de los ingresos mensuales por
ocupacin principal y secundaria desde el individuo con
menos ingresos al individuo con ms ingresos
acu_pob Distribucin acumulada de la poblacin desde el individuo
con menos ingresos al individuo con ms ingresos
acu_ing_r Distribucin acumulada de los ingresos mensuales por
ocupacin principal y secundaria desde el individuo con
menos ingresos al individuo con ms ingresos por regin
acu_pob_r Distribucin acumulada de la poblacin desde el individuo
con menos ingresos al individuo con ms ingresos por regin

También podría gustarte