Download laboratorio 2
Document related concepts
no text concepts found
Transcript
Ejercicios para el Segundo Laboratorio de Pronósticos Ejercicio 1 1. abre el archivo del capítulo 8 sobre termostatos. 2. genera la variable del tiempo utilizando gen tiempo=_n 3. Especifica que es una serie de tiempo con tsset tiempo 4. Grafica la variable dependiente (y) contra el tiempo. ¿Tiene tendencia? Si no tiene, explica. Si tiene, ¿es positiva o negativa? ¿lineal o cuadrática? 5. Corre la regresión lineal de y contra el tiempo y un período de rezago, para las primeras 30 observaciones. ¿Qué significa cada coeficiente? regress y tiempo L.y in 1/30 6. utiliza estos parámetros para pronosticar los valores de los períodos 31 a 52. predict yhat in 31/52 7. Grafica los valores reales y los pronósticos. ¿Parece ser buen pronóstico? Si no, ¿cómo podemos modificar el modelo para que sea más adecuado? 8. Corre la regresión cuadrática para los primeros 30 observaciones; utiliza estos parámetros para pronosticar los valores de los períodos 31 a 52. (Hay que generar una nueva variable para t2.) ¿Hay alguna mejora? 9. Corre la regresión cuadrática para todas las observaciones; utiliza estos parámetros para pronosticar los valores de los períodos 31 a 52. ¿Qué significan los coeficientes? ¿Qué podemos aprender de este ejercicio? ¿Crees que los pronósticos generados por este modelo puedan ser adecuados en el futuro? 10. Basado en la gráfica (paso 3), ¿crees que haya algún problema de autocorrelación? 11. Genera la estadística Durbin-Watson. ¿Parece haber algún problema de autocorrelación? Si no, explica. Si hay, ¿es positiva o negativa? estat dwatson 12. Podemos realizar un modelo de suavización exponencial con los siguientes comandos: summarize in 1/26 (De aquí, agarra la media de y) gen lt=(media de y) if tiempo==1 (define ℓ0) replace lt=0.1*y+0.9*L.lt in 2/52 (calcula las iteraciones de ℓ2 a ℓ52) 13. Repite el ejercicio con =0.5 y =0.9. Grafica y, lt5 y lt9 contra el tiempo. ¿Cuál se ajusta mejor a los valores observados? 14. ¿Cómo se compara este modelo con los que calculamos anteriormente? 15. Podríamos hacer el mismo ejercicio (pasos 12 -14) pero tomando menos observaciones para calcular ℓ0. Si tienes tiempo, haz este ejercicio. ¿Cómo cambian los pronósticos? 16. Guarda los cambios en la base de datos (el ícono). Cierra la base de datos con clear Ejercicio 2 17. Abre el archivo de Sports Drinks del capítulo 8. 18. Genera la variable del tiempo. 19. Especifica que es una serie de tiempo. 20. Grafica y contra tiempo. ¿Exhibe alguna tendencia? ¿Variación estacional (¿constante o creciente? ¿mensual o trimestral?)? ¿Ciclo? Explica. 21. Basado en la gráfica (paso 20), ¿crees que haya algún problema de autocorrelación? 22. Genera la estadística Durbin-Watson. ¿Parece haber algún problema de autocorrelación? Si no, explica. Si hay, ¿es positiva o negativa? estat dwatson 23. Especifica que los períodos de tiempo son trimestrales con format tiempo %tq 24. Crea la variable de trimestres con gen qtr = quarter(dofq(tiempo)) 25. Genera las dummies para los trimestres 2, 3 y 4. 26. Corre la regresión lineal de y contra tiempo y las dummies. ¿Qué significan los coeficientes? 27. Calcula los valores pronosticados con predict yhat 28. Grafica y y yhat contra el tiempo. ¿Qué observas? 29. Repite los pasos 19 a 21 con el logaritmo de y. (Primero utiliza gen lny=ln(y); en 20 predict yhat2).) 30. Genera las medias móviles de 3, 5 y 7 períodos con smooth 3 y, gen(sm3y) smooth 5 y, gen(sm5y) smooth 7 y, gen(sm7y) 31. Grafica y y cada una de las medias móviles (por separado) contra el tiempo. ¿Qué observas? 32. Corre el modelo auto-regresivo con el comando arima y, ar(1 4) Este comando regresa yt contra yt-1 y yt-4: yt=β0+ β1 yt-1 + β2 yt-4 ¿Qué observas? ¿Qué significan los coeficientes? Capítulo 7 Supongamos que un modelo de descomposición aditiva nos haya arrojado los siguientes parámetros: β0 = 32 β1 = 4 SN3 = 4 SN4 = -1 SN1 = 3 SN2 = 6 Si t=0 en el último cuarto de 2007, ¿cuál es la predicción puntual de y para el tercer trimestre de 2008? Supongamos que un modelo de descomposición multiplicativa nos haya arrojado los siguientes parámetros: β0 = 2.5 β1 = 0.3 SN3 = -0.4 SN4 = -0.2 SN1 = 1.2 SN2 = 0.3 Si t=0 en el último cuarto de 2007, ¿cuál es la predicción puntual de y para el segundo trimestre de 2008? Comandos útiles en Stata note para incluir explicaciones dentro del registro de la sesión, sin que marque error. L.varname para generar variables con un período de rezago gen newvarname=_n ej. gen tiempo=_n para generar una variable que cuenta de 1 a n, el número de observaciones. Útil cuando los datos no incluyen la variable de tiempo (como en algunas series del libro de texto) in (1/t) donde t representa el período máximo que se desea modelar, para modelar solamente cierta parte de los datos (para luego comprobar si el modelo pronostica bien los otros datos que tenemos) ej.: regress y tiempo in(1/24) corre la regresión lineal simple sobre los primeros 24 observaciones. smooth # y, gen(newvarname) genera la serie suavizada (newvarname), donde # es el número de períodos tomados en cuenta para la suavización Si tienes fechas en un formato que necesitas cambiar, puedes usar gen con subst(s,n1,n2), donde s es el texto original, n1 especifica el punto del texto donde comienza la parte deseada y n2 cuán larga es la parte deseada. Por ejemplo, si tenemos fechas del formato 15 marzo 2008, podemos usar: gen dia=substr(fecha,1,2) gen anio=substr(fecha,-4,.) (Cuando n1<0, se toma la distancia desde el final del texto. Cuando n2=. se toma lo que resta del texto.) pero para generar los meses, ya que son de diferentes longitudes, tendríamos que usar generate y replace. ej. gen mes=3 if substr(fecha,4,5)==“marzo” replace mes=2 if substr(fecha,4,3)==“feb” Nota: si los meses están capturados en forma abreviada de tres letras, se puede seguir el procedimiento de arriba. date(s1,s2[,y]) para convertir fechas en forma de texto a numérico s1 = texto original s2 = especificación de la órden de la fecha: mdy significa mes, día, año (de cuatro dígitos) date(“1/15/99”,“md19y”) = 15 jan1999 d(15jan1999) da el mismo resultado. dow(e) doy(e) da el día de la semana (0-domingo-a 6-sábado) correspondiente a la fecha e da el día del año (1 a 366) correspondiente a la fecha e week(e) da la semana (1 a 52) correspondiente a la fecha e month(e) da el mes (1 a 12) correspondiente a la fecha e quarter(e) da el trimestre (1 a 4) correspondiente a la fecha e halfyear(e) da el semestre (1 o 2) correspondiente a la fecha e year(e) da el año (100 a 9999) correspondiente a la fecha e m(l) convierte fechas en formato textual de añomes (ej. 1999jan) en tiempo transcurrido q(l) convierte fechas en formato 2008q1 en número de trimestres transcurridos desde 1960q1