Publié le :

Analyse et Prévision des Températures de l'Hémisphère Sud

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script importe plusieurs fichiers CSV contenant des données de température de l'hémisphère sud. Il utilise ensuite des procédures SAS© telles que `PROC GLM` pour l'analyse de régression linéaire et `PROC AUTOREG` pour la modélisation de séries chronologiques avec autocorrélation. Des visualisations graphiques sont générées avec `PROC SGPLOT` pour comparer les températures observées et prévues, ainsi que leurs intervalles de confiance. Une section bonus importe des données supplémentaires pour une analyse de régression auto-régressive plus complexe intégrant une variable catégorielle.
Analyse des données

Type : EXTERNE


Les données sont entièrement importées depuis des fichiers CSV externes ('SouthernTemp.csv', 'SouthernTemp1e.csv', 'SouthernTempBON.csv') via des instructions `FILENAME` et la procédure `PROC IMPORT`.

1 Bloc de code
PROC IMPORT Data
Explication :
Ce bloc prépare l'environnement en supprimant la table temporaire `WORK.stemp` si elle existe. Il définit ensuite un `FILENAME` pour pointer vers le fichier CSV 'SouthernTemp.csv', puis importe les données de ce fichier dans une nouvelle table SAS nommée `WORK.stemp`. L'option `GETNAMES=YES` indique que la première ligne du CSV contient les noms des variables. `PROC CONTENTS` est utilisée pour afficher les métadonnées de la table créée, et `%web_open_table` ouvre la table dans l'interface SAS Studio.
Copié !
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 Bloc de code
PROC IMPORT Data
Explication :
Similaire au bloc précédent, ce bloc supprime la table `WORK.pstemp` si elle existe, puis importe les données d'un autre fichier CSV, 'SouthernTemp1e.csv', dans la table SAS `WORK.pstemp`. `PROC CONTENTS` affiche les métadonnées et `%web_open_table` ouvre la table dans SAS Studio.
Copié !
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 Bloc de code
PROC SGPLOT
Explication :
Ce bloc utilise `PROC SGPLOT` pour générer un graphique à partir des données de la table `stemp`. Il superpose un graphique de série (`series`) montrant l'évolution de la `temperature` par rapport à l'`year`, et un nuage de points (`scatter`) des mêmes variables pour visualiser les points de données individuels.
Copié !
1*AQ1.a
2proc sgplot data=stemp;
3series x=year y=temperature;
4scatter x=year y=temperature;
5RUN;
4 Bloc de code
PROC GLM
Explication :
Ce bloc effectue une analyse de régression linéaire en utilisant `PROC GLM`. Le modèle spécifie que la variable `temperature` est prédite par la variable `year` à partir des données de la table `stemp`. L'option `plots=all` demande la génération de tous les graphiques diagnostiques standards pour l'évaluation du modèle.
Copié !
1*AQ1.b and .c;
2 
3PROC GLM DATA=stemp plots=all;
4model temperature = year;
5RUN;
5 Bloc de code
PROC AUTOREG
Explication :
Ce bloc utilise `PROC AUTOREG` pour une analyse de régression auto-régressive sur la table `stemp`. Le modèle prédit la `temperature` en fonction de l'`year`. L'option `/ dwprob` demande le calcul du test de Durbin-Watson pour détecter l'autocorrélation dans les résidus. `plots=all` génère les graphiques diagnostiques.
Copié !
1*AQ1.d;
2PROC AUTOREG DATA=stemp plots=all;
3model temperature = year / dwprob;
4RUN;
6 Bloc de code
PROC AUTOREG Data
Explication :
Ce bloc exécute une régression auto-régressive sur la table `pstemp` avec `PROC AUTOREG`. Le modèle inclut la `temperature` comme variable dépendante et l'`year` comme prédicteur. L'option `nlag=1` spécifie un décalage d'ordre 1 pour la modélisation de l'autocorrélation. L'instruction `output` crée une nouvelle table `fcast` contenant les valeurs prédites (`yhat`), les prévisions moyennes (`ytrend`) et les limites inférieures (`lower`) et supérieures (`upper`) des intervalles de confiance.
Copié !
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 Bloc de code
PROC SGPLOT
Explication :
Ce bloc utilise `PROC SGPLOT` pour visualiser les résultats de la prévision stockés dans la table `fcast`. Il affiche un titre principal et un sous-titre, puis trace une bande (`band`) représentant les intervalles de confiance des prévisions (`lower`, `upper`). Les températures réelles (`temperature`) sont affichées comme un nuage de points et une série, et la série des prévisions moyennes (`ytrend`) est ajoutée pour comparaison.
Copié !
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 Bloc de code
PROC IMPORT Data
Explication :
Cette section bonus effectue une opération similaire aux blocs d'importation précédents. Elle supprime la table `WORK.sbonus` si elle existe, puis importe les données du fichier CSV 'SouthernTempBON.csv' dans une nouvelle table SAS nommée `WORK.sbonus`. Les métadonnées sont affichées via `PROC CONTENTS`, et la table est ouverte dans SAS Studio.
Copié !
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 Bloc de code
PROC AUTOREG
Explication :
Ce bloc bonus exécute une régression auto-régressive sur la table `sbonus` en utilisant `PROC AUTOREG`. Le modèle inclut la variable dépendante `temperature` et les prédicteurs `year` et `recent`. La variable `recent` est déclarée comme une variable catégorielle (`class`). `nlag=1` et `dwprob` sont utilisés pour l'autocorrélation et le test de Durbin-Watson. L'instruction `output` est commentée, ce qui signifie qu'aucune nouvelle table de prévisions n'est générée par ce bloc.
Copié !
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;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.