Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Page 1
Introducción STATA.do - Printed on 23/3/2022 12:49:30
68 describe /*datos de la base (labels, format, etc)*/
69 summ /*estad descriptivas de la base*/
70
71 /*No podemos tener experiencia negativa*/
72 *drop if experiencia < 0
73 keep if experiencia >= 0
74 summ
75 save "formatodta", replace
76 *Una o más variables
77 describe educ
78 summ educ
79
80 * ¿Qué pasa con la variable region?
81 describe region
82 summ region
83
84 tab region
85 tab edad
86 *También podemos obtener más medidas de resumen:
87 tabstat edad, statistics (mean median sd count)
88 tabstat w, statistics (mean median sd count)
89 *Mean=media
90 *median=mediana
91 *sd= desv est
92 *count = contar (excluímos los NA)
93
94 *Explicar lo que es una variable Dummy y para que sirve
95 tabstat est_civil, statistics (mean count)
96
97 *También lo podemos abrir en grupos
98 tabstat w, statistics (mean median sd count) by(sexo)
99
100 *Cuadro doble entrada
101 tab est_civil sexo
102
103
104 ********************************************************************************
105 * Variables, condicionales y NA
106
107 /*Tips y reglas para nombrar variables:
108 Fáciles
109 Cortos
110 No pueden tener espacios, usen guión bajo
111 Eviten mezclar mayus y minusc
112 No usen nombres preexistentes
113 */
114 gen salario = exp(w)
115 tabstat salario, statistics (mean median sd count) by(sexo)
116
117
118 /*Condicionales
119 <= menor o igual
120 < menor
121 == igual
122 >= mayor o igual
123 > mayor
124 != distinto
125 */
126
127
128 tab est_civil if sexo == 1
129
130 *Prestar atención a cambios hechos y a NA
131 gen cat_educ = .
132 replace cat_educ = 0 if educ == 0
133 replace cat_educ = 1 if educ > 0 & educ <= 6
134 replace cat_educ = 2 if educ > 6 & educ <= 12
135 replace cat_educ = 3 if educ > 12 & educ <= 17
Page 2
Introducción STATA.do - Printed on 23/3/2022 12:49:30
136 replace cat_educ = 4 if educ > 17
137
138 tab cat_educ
139 summ cat_educ /*Qué está pasando con cantidad de observaciones?*/
140 tabstat cat_educ, statistics (count)
141
142 *Para ALGUNOS CASOS PARTICULARES, relacionados con funciones, usamos egen.
143 egen educ_media = mean(educ)
144 drop educ_media
145
146 *Descripción en apertura por categorías (¿por qué categorías?)
147 table cat_educ, contents (mean salario sd salario)
148 table region, contents (mean salario sd salario)
149
150 ********************************************************************************
151 ********************************************************************************
152 ********************************************************************************
153
154 *Recapitulando, vimos como manipular base/variables: gen, replace, drop, keep
155 *ej
156 gen sal_cuadr=salario^2
157 drop sal_cuadr
158
159 *Para sobreescribir una variable podemos usar replace
160 replace sal_cuadr = salary^3 /*Error*/
161
162 gen sal_cuadr = salario^2
163 replace sal_cuadr = salario^3 /*ok*/
164 *y podemos repetirlo
165 replace sal_cuadr = salario^2 /*ok*/
166
167 ********************************************************************************
168 ********************************************************************************
169 ********************************************************************************
170 *CATEGÓRICAS
171 *Bonus:
172 tab region, ge(region)
173 br
174 br region1-region5
175
176 *check
177 gen suma = region1 + region2 + region3 + region4 + region5
178 summ suma
179 drop suma
180 ********************************************************************************
181 ********************************************************************************
182 ********************************************************************************
183
184 *Ordenado de la base. Sort ordena en orden ascendente. gsort permite descendente al poner un '-'
adelante.
185
186 sort salario/*ascendente*/
187 gsort -salario/*descendente*/
188 gsort salario -est_civil
189
190 *Para lo que haremos no creo que encontremos tanta utilidad pero con otras bases sí!
191
192 *Esto permite también una interaccion con comandos.
193 bysort est_civil: egen media_salario= mean(salario)
194 tab est_civil media_salario
195 drop media_salario
196
197 *Podríamos hacer medias por más subcategroías
198 bysort est_civil sexo: egen media_salario= mean(salario)
199 drop media_salario
200
201 *Comentario: los NA al usar sort/gsort se toman como el valor más grande
202
Page 3
Introducción STATA.do - Printed on 23/3/2022 12:49:30
203 ********************************************************************************
204 ********************************************************************************
205 ********************************************************************************
206
207
208 *Gráficos (notar que STATA abre de a uno):
209 *(Mostrar algo del editor y cómo guardar)
210
211 *Histograma
212 hist salario /*Notación científica*/
213 *Cambiar formato:
https://www.statalist.org/forums/forum/general-stata-discussion/general/1359404-scientific-notation
-on-histogram-with-frequency-option
214 *Tipos de formato: http://wlm.userweb.mwn.de/Stata/wstatfor.htm
215 hist salario, yla(, format(%9.4f) ang(h)) /*Keseso en el eje de las y? La densidad (VAC)...
Quizás no es lo ideal*/
216 *Explicación histogramas: https://www.reed.edu/psychology/stata/gs/tutorials/histograms.html
217 hist salario, percent /*Freq rel*/
218 hist salario, freq /*Freq abs*/
219 hist salario, normal /*Ponemos la normal que mejor ajusta*/
220 hist edad, normal /*Ponemos la normal que mejor ajusta*/
221 hist salario, kdensity /*kernel*/
222
223 *Dispersión
224 graph twoway scatter salario educ
225 graph twoway scatter salario educ if sexo == 0 /*tmb podemos acotar*/
226 twoway scatter salario educ if sexo == 0 /*simplificar redacción*/
227 scatter salario educ if sexo == 0 /*simplificar redacción*/
228
229 twoway (scatter salario educ) (lfit salario educ ), title(Relación educación y salario)
/*Añadimos una recta de reg a modo ilustrativo (no necesariamente igual a la de una regresión
multivariada)*/
230
231 *Última y comentamos opciones
232 graph pie region1-region5
233 graph pie region1-region5, title(Distribución geográfica)
234 graph pie region1-region5, title(Distribución geográfica) subtitle(Subdivisión en 5 regiones)
235
236 graph pie region1-region5, title(Distribución geográfica) subtitle(Subdivisión en 5 regiones)
noclockwise
237
238 ********************************************************************************
239 ********************************************************************************
240 ********************************************************************************
241 *REGRESIONES
242 reg salario educ
243
244 *Muestras acotadas
245 set seed 12
246 gen random = runiform()
247
248 reg salario educ
249 estimates store total
250 reg salario educ if random > .98
251 estimates store subsample1
252 reg salario educ if random > .989
253 estimates store subsample2
254 reg salario educ if random > .999
255 estimates store subsample3
256
257
258 estimates table total subsample1 subsample2 subsample3, star b(%9.4f) title(Comparación
estimaciones)
259
260 *Otro caso
261 reg salario sexo
262 reg salario sexo if random > .99
263 reg salario sexo if random > .998
Page 4