Publicado el :

Análisis y Previsión de las Temperaturas del Hemisferio Sur

Este código también está disponible en: Deutsch English Français
En espera de validación
El script importa varios archivos CSV que contienen datos de temperatura del hemisferio sur. Luego utiliza procedimientos SAS© como `PROC GLM` para el análisis de regresión lineal y `PROC AUTOREG` para el modelado de series temporales con autocorrelación. Se generan visualizaciones gráficas con `PROC SGPLOT` para comparar las temperaturas observadas y previstas, así como sus intervalos de confianza. Una sección adicional importa datos suplementarios para un análisis de regresión autorregresiva más complejo que integra una variable categórica.
Análisis de datos

Type : EXTERNE


Los datos se importan completamente desde archivos CSV externos ('SouthernTemp.csv', 'SouthernTemp1e.csv', 'SouthernTempBON.csv') a través de instrucciones `FILENAME` y el procedimiento `PROC IMPORT`.

1 Bloque de código
PROC IMPORT Data
Explicación :
Este bloque prepara el entorno eliminando la tabla temporal `WORK.stemp` si existe. Luego define un `FILENAME` para apuntar al archivo CSV 'SouthernTemp.csv', y luego importa los datos de este archivo a una nueva tabla SAS llamada `WORK.stemp`. La opción `GETNAMES=YES` indica que la primera línea del CSV contiene los nombres de las variables. `PROC CONTENTS` se utiliza para mostrar los metadatos de la tabla creada, y `%web_open_table` abre la tabla en la interfaz de SAS Studio.
¡Copiado!
1%web_drop_table(WORK.stemp);
2 
3FILENAME REFFILE '/home/gsturrock0/STAT2/SouthernTemp.csv';
4 
5PROC IMPORT DATAFILE=REFFILE
6 DBMS=CSV
7 OUT=WORK.stemp;
8 GETNAMES=YES;
9RUN;
10 
11PROC CONTENTS DATA=WORK.stemp; RUN;
12 
13%web_open_table(WORK.stemp);
2 Bloque de código
PROC IMPORT Data
Explicación :
Similar al bloque anterior, este bloque elimina la tabla `WORK.pstemp` si existe, luego importa los datos de otro archivo CSV, 'SouthernTemp1e.csv', a la tabla SAS `WORK.pstemp`. `PROC CONTENTS` muestra los metadatos y `%web_open_table` abre la tabla en SAS Studio.
¡Copiado!
1%web_drop_table(WORK.pstemp);
2 
3FILENAME REFFILE '/home/gsturrock0/STAT2/SouthernTemp1e.csv';
4 
5PROC IMPORT DATAFILE=REFFILE
6 DBMS=CSV
7 OUT=WORK.pstemp;
8 GETNAMES=YES;
9RUN;
10 
11PROC CONTENTS DATA=WORK.pstemp; RUN;
12 
13%web_open_table(WORK.pstemp);
3 Bloque de código
PROC SGPLOT
Explicación :
Este bloque utiliza `PROC SGPLOT` para generar un gráfico a partir de los datos de la tabla `stemp`. Superpone un gráfico de serie (`series`) mostrando la evolución de la `temperature` en relación con el `year`, y un diagrama de dispersión (`scatter`) de las mismas variables para visualizar los puntos de datos individuales.
¡Copiado!
1*AQ1.a
2proc sgplot data=stemp;
3series x=year y=temperature;
4scatter x=year y=temperature;
5RUN;
4 Bloque de código
PROC GLM
Explicación :
Este bloque realiza un análisis de regresión lineal utilizando `PROC GLM`. El modelo especifica que la variable `temperature` es predicha por la variable `year` a partir de los datos de la tabla `stemp`. La opción `plots=all` solicita la generación de todos los gráficos de diagnóstico estándar para la evaluación del modelo.
¡Copiado!
1*AQ1.b and .c;
2 
3PROC GLM DATA=stemp plots=all;
4model temperature = year;
5RUN;
5 Bloque de código
PROC AUTOREG
Explicación :
Este bloque utiliza `PROC AUTOREG` para un análisis de regresión autorregresiva en la tabla `stemp`. El modelo predice la `temperature` en función del `year`. La opción `/ dwprob` solicita el cálculo de la prueba de Durbin-Watson para detectar la autocorrelación en los residuos. `plots=all` genera los gráficos de diagnóstico.
¡Copiado!
1*AQ1.d;
2PROC AUTOREG DATA=stemp plots=all;
3model temperature = year / dwprob;
4RUN;
6 Bloque de código
PROC AUTOREG Data
Explicación :
Este bloque ejecuta una regresión autorregresiva en la tabla `pstemp` con `PROC AUTOREG`. El modelo incluye la `temperature` como variable dependiente y el `year` como predictor. La opción `nlag=1` especifica un retardo de orden 1 para el modelado de la autocorrelación. La instrucción `output` crea una nueva tabla `fcast` que contiene los valores predichos (`yhat`), las previsiones medias (`ytrend`) y los límites inferior (`lower`) y superior (`upper`) de los intervalos de confianza.
¡Copiado!
1*AQ1.e and .f;
2PROC AUTOREG DATA=pstemp plots=all;
3model temperature = year / nlag=1 dwprob;
4OUTPUT out=fcast p=yhat pm=ytrend lcl=lower ucl=upper;
5RUN;
7 Bloque de código
PROC SGPLOT
Explicación :
Este bloque utiliza `PROC SGPLOT` para visualizar los resultados de la previsión almacenados en la tabla `fcast`. Muestra un título principal y un subtítulo, luego traza una banda (`band`) que representa los intervalos de confianza de las previsiones (`lower`, `upper`). Las temperaturas reales (`temperature`) se muestran como un diagrama de dispersión y una serie, y la serie de las previsiones medias (`ytrend`) se añade para comparación.
¡Copiado!
1PROC SGPLOT DATA=fcast;
2title 'Southern Hemisphere Temperature Comparison to 161 Year Mean';
3title2 'with 2011 Forecast';
4band x=year upper=upper lower=lower;
5scatter x=Year y=temperature;
6series x=year y=temperature;
7series x=year y=ytrend / lineattrs=(color=black);
8RUN;
9title;
10title2;
8 Bloque de código
PROC IMPORT Data
Explicación :
Esta sección adicional realiza una operación similar a los bloques de importación anteriores. Elimina la tabla `WORK.sbonus` si existe, luego importa los datos del archivo CSV 'SouthernTempBON.csv' a una nueva tabla SAS llamada `WORK.sbonus`. Los metadatos se muestran a través de `PROC CONTENTS`, y la tabla se abre en SAS Studio.
¡Copiado!
1*bonus;
2%web_drop_table(WORK.sbonus);
3 
4 
5FILENAME REFFILE '/home/gsturrock0/STAT2/SouthernTempBON.csv';
6 
7PROC IMPORT DATAFILE=REFFILE
8 DBMS=CSV
9 OUT=WORK.sbonus;
10 GETNAMES=YES;
11RUN;
12 
13PROC CONTENTS DATA=WORK.sbonus; RUN;
14 
15 
16%web_open_table(WORK.sbonus);
9 Bloque de código
PROC AUTOREG
Explicación :
Este bloque adicional ejecuta una regresión autorregresiva en la tabla `sbonus` utilizando `PROC AUTOREG`. El modelo incluye la variable dependiente `temperature` y los predictores `year` y `recent`. La variable `recent` se declara como una variable categórica (`class`). `nlag=1` y `dwprob` se utilizan para la autocorrelación y la prueba de Durbin-Watson. La instrucción `output` está comentada, lo que significa que este bloque no genera una nueva tabla de previsiones.
¡Copiado!
1PROC AUTOREG DATA=sbonus plots=all;
2class recent;
3model temperature = year recent / nlag=1 dwprob;
4*output out=fcast p=yhat pm=ytrend lcl=lower ucl=upper;
5RUN;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.