Veröffentlicht am :

Analyse und Vorhersage der Temperaturen der südlichen Hemisphäre

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript importiert mehrere CSV-Dateien, die Temperaturdaten der südlichen Hemisphäre enthalten. Es verwendet dann SAS©-Prozeduren wie `PROC GLM` für die lineare Regressionsanalyse und `PROC AUTOREG` für die Zeitreihenmodellierung mit Autokorrelation. Grafische Visualisierungen werden mit `PROC SGPLOT` erstellt, um beobachtete und vorhergesagte Temperaturen sowie deren Konfidenzintervalle zu vergleichen. Ein Bonusabschnitt importiert zusätzliche Daten für eine komplexere autoregressive Regressionsanalyse, die eine kategoriale Variable integriert.
Datenanalyse

Type : EXTERNE


Die Daten werden vollständig aus externen CSV-Dateien ('SouthernTemp.csv', 'SouthernTemp1e.csv', 'SouthernTempBON.csv') über `FILENAME`-Anweisungen und die `PROC IMPORT`-Prozedur importiert.

1 Codeblock
PROC IMPORT Data
Erklärung :
Dieser Block bereitet die Umgebung vor, indem er die temporäre Tabelle `WORK.stemp` löscht, falls sie existiert. Er definiert dann einen `FILENAME`, der auf die CSV-Datei 'SouthernTemp.csv' verweist, und importiert anschließend die Daten aus dieser Datei in eine neue SAS-Tabelle namens `WORK.stemp`. Die Option `GETNAMES=YES` zeigt an, dass die erste Zeile der CSV-Datei die Variablennamen enthält. `PROC CONTENTS` wird verwendet, um die Metadaten der erstellten Tabelle anzuzeigen, und `%web_open_table` öffnet die Tabelle in der SAS Studio-Oberfläche.
Kopiert!
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 Codeblock
PROC IMPORT Data
Erklärung :
Ähnlich dem vorherigen Block löscht dieser Block die Tabelle `WORK.pstemp`, falls sie existiert, und importiert dann die Daten aus einer anderen CSV-Datei, 'SouthernTemp1e.csv', in die SAS-Tabelle `WORK.pstemp`. `PROC CONTENTS` zeigt die Metadaten an, und `%web_open_table` öffnet die Tabelle in SAS Studio.
Kopiert!
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 Codeblock
PROC SGPLOT
Erklärung :
Dieser Block verwendet `PROC SGPLOT`, um ein Diagramm aus den Daten der Tabelle `stemp` zu generieren. Er überlagert ein Liniendiagramm (`series`), das die Entwicklung der `temperature` im Verhältnis zum `year` zeigt, und ein Streudiagramm (`scatter`) derselben Variablen, um die einzelnen Datenpunkte zu visualisieren.
Kopiert!
1*AQ1.a
2proc sgplot data=stemp;
3series x=year y=temperature;
4scatter x=year y=temperature;
5RUN;
4 Codeblock
PROC GLM
Erklärung :
Dieser Block führt eine lineare Regressionsanalyse mit `PROC GLM` durch. Das Modell gibt an, dass die Variable `temperature` durch die Variable `year` aus den Daten der Tabelle `stemp` vorhergesagt wird. Die Option `plots=all` fordert die Generierung aller standardmäßigen Diagnoseplots für die Modellbewertung an.
Kopiert!
1*AQ1.b and .c;
2 
3PROC GLM DATA=stemp plots=all;
4model temperature = year;
5RUN;
5 Codeblock
PROC AUTOREG
Erklärung :
Dieser Block verwendet `PROC AUTOREG` für eine autoregressive Regressionsanalyse auf der Tabelle `stemp`. Das Modell prognostiziert die `temperature` basierend auf dem `year`. Die Option `/ dwprob` fordert die Berechnung des Durbin-Watson-Tests an, um Autokorrelation in den Residuen zu erkennen. `plots=all` generiert die Diagnoseplots.
Kopiert!
1*AQ1.d;
2PROC AUTOREG DATA=stemp plots=all;
3model temperature = year / dwprob;
4RUN;
6 Codeblock
PROC AUTOREG Data
Erklärung :
Dieser Block führt eine autoregressive Regression auf der Tabelle `pstemp` mit `PROC AUTOREG` durch. Das Modell enthält die `temperature` als abhängige Variable und das `year` als Prädiktor. Die Option `nlag=1` gibt eine Verzögerung erster Ordnung für die Modellierung der Autokorrelation an. Die `output`-Anweisung erstellt eine neue Tabelle `fcast`, die die vorhergesagten Werte (`yhat`), die durchschnittlichen Prognosen (`ytrend`) und die unteren (`lower`) und oberen (`upper`) Grenzen der Konfidenzintervalle enthält.
Kopiert!
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 Codeblock
PROC SGPLOT
Erklärung :
Dieser Block verwendet `PROC SGPLOT`, um die in der Tabelle `fcast` gespeicherten Prognoseergebnisse zu visualisieren. Er zeigt einen Haupttitel und einen Untertitel an und zeichnet dann ein Band (`band`), das die Konfidenzintervalle der Prognosen (`lower`, `upper`) darstellt. Die tatsächlichen Temperaturen (`temperature`) werden als Streudiagramm und Serie angezeigt, und die Serie der durchschnittlichen Prognosen (`ytrend`) wird zum Vergleich hinzugefügt.
Kopiert!
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 Codeblock
PROC IMPORT Data
Erklärung :
Dieser Bonusabschnitt führt eine ähnliche Operation wie die vorherigen Importblöcke durch. Er löscht die Tabelle `WORK.sbonus`, falls sie existiert, und importiert dann die Daten aus der CSV-Datei 'SouthernTempBON.csv' in eine neue SAS-Tabelle namens `WORK.sbonus`. Die Metadaten werden über `PROC CONTENTS` angezeigt, und die Tabelle wird in SAS Studio geöffnet.
Kopiert!
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 Codeblock
PROC AUTOREG
Erklärung :
Dieser Bonusblock führt eine autoregressive Regression auf der Tabelle `sbonus` unter Verwendung von `PROC AUTOREG` durch. Das Modell umfasst die abhängige Variable `temperature` und die Prädiktoren `year` und `recent`. Die Variable `recent` wird als kategoriale Variable (`class`) deklariert. `nlag=1` und `dwprob` werden für die Autokorrelation und den Durbin-Watson-Test verwendet. Die `output`-Anweisung ist auskommentiert, was bedeutet, dass in diesem Block keine neue Prognosetabelle generiert wird.
Kopiert!
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;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.