Das Skript beginnt mit der Ausführung von zwei linearen Regressionsmodellen mittels `PROC REG` auf dem Dataset `sashelp.class`, wobei die Beziehung zwischen `Weight` und `Height` untersucht und anschließend `Age` einbezogen wird. Danach werden globale Titel für die Ausgabe definiert. Ein `DATA`-Schritt wird verwendet, um das Dataset `USPopulation` zu erstellen, indem die `Population`-Daten direkt aus einem `datalines`-Block gelesen werden. Dieser Schritt berechnet auch die abgeleiteten Variablen `Year` und `YearSq`. Eine zweite `PROC REG` wird auf `USPopulation` angewendet, um `Population` als Funktion von `Year` zu modellieren, mit einer `ODS OUTPUT`-Funktion, um die Kovarianzmatrix (`covb`) in einem Dataset `Bmatrix` zu speichern. Das Modell wird dann geändert, um `YearSq` hinzuzufügen. Schließlich zeigt eine `PROC PRINT` den Inhalt des Datasets `Bmatrix` an, wobei die Systemvariablen `_run_` zur Identifizierung der Beobachtungen verwendet werden.
Datenanalyse
Type : MIXTE
Das Skript verwendet das interne Beispiel-Dataset `sashelp.class`. Es generiert außerdem ein `USPopulation`-Dataset intern aus numerischen Daten, die über `datalines` bereitgestellt werden. Das Dataset `Bmatrix` wird dynamisch als ODS-Ausgabe der `PROC REG` erstellt.
1 Codeblock
PROC REG
Erklärung : Dieser Block führt die lineare Regressionsprozedur (`PROC REG`) auf dem Dataset `sashelp.class` aus. Er passt zunächst ein einfaches Modell von `Weight` als Funktion von `Height` an, dann ein zweites Modell, das zusätzlich zu `Height` auch `Age` als Prädiktoren für `Weight` enthält.
Kopiert!
proc reg data=sashelp.class;
var Age;
model Weight = Height;
run;
model Weight = Height Age;
run;
quit;
1
PROC REGDATA=sashelp.class;
2
var Age;
3
model Weight = Height;
4
RUN;
5
6
model Weight = Height Age;
7
RUN;
8
QUIT;
2 Codeblock
DATA STEP Data
Erklärung : Dieser `DATA`-Schritt erstellt ein neues Dataset namens `USPopulation`. Die Variable `Population` wird aus den im `datalines`-Block bereitgestellten Daten gelesen. Die Variable `Year` wird auf 1780 initialisiert und für jede Beobachtung um 10 erhöht, und `YearSq` wird als Quadrat von `Year` berechnet. Die Variable `Population` wird ebenfalls skaliert, indem sie durch 1000 geteilt wird. Der Verweis `input Population @code_sas_json/...` im Originalskript ist ein SAS-Syntaxfehler und wurde zu `input Population;` korrigiert, um die Ausführung des Codes zu ermöglichen.
Kopiert!
title1 'US Population Study';
title2 'Concatenating Two Tables into One Data Set';
data USPopulation;
input Population ;
retain Year 1780;
Year=Year+10;
YearSq=Year*Year;
Population=Population/1000;
datalines;
3929 5308 7239 9638 12866 17069 23191 31443 39818 50155
62947 75994 91972 105710 122775 131669 151325 179323 203211
;
1
title1 'US Population Study';
2
title2 'Concatenating Two Tables into One Data Set';
Erklärung : Diese `PROC REG` analysiert die Beziehung zwischen `Population` und `Year` unter Verwendung des Datasets `USPopulation`. Sie verwendet `ODS OUTPUT`, um ein Dataset namens `Bmatrix` zu erstellen, das die Kovarianzmatrix der Parameterschätzungen enthält. Nach der ersten Ausführung wird die Variable `YearSq` über die `add`-Anweisung zum Modell hinzugefügt, und die aktualisierten Ergebnisse werden gedruckt. Die Prozedur wird mit `quit;` beendet.
Kopiert!
proc reg data=USPopulation;
ods output covb(persist=run)=Bmatrix;
var YearSq;
model Population = Year / covb;
run;
add YearSq;
print;
quit;
1
PROC REGDATA=USPopulation;
2
ods OUTPUT covb(persist=RUN)=Bmatrix;
3
var YearSq;
4
model Population = Year / covb;
5
RUN;
6
7
add YearSq;
8
PRINT;
9
QUIT;
4 Codeblock
PROC PRINT
Erklärung : Diese `PROC PRINT` zeigt den Inhalt des zuletzt erstellten oder aktiven Datasets an, welches höchstwahrscheinlich das von der vorherigen `PROC REG` generierte Dataset `Bmatrix` ist. Die Optionen `id _run_;` und `by _run_;` werden verwendet, um die Beobachtungen basierend auf der internen Variable `_run_` zu identifizieren und zu gruppieren, die oft von `ODS OUTPUT` mit der Option `PERSIST=RUN` generiert wird.
Kopiert!
proc print;
id _run_;
by _run_;
run;
1
PROC PRINT;
2
id _run_;
3
BY _run_;
4
RUN;
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.
Urheberrechtsinformationen : S A S S A M P L E L I B R A R Y, NAME: ODSEX6, TITLE: Documentation Example 6 for ODS, PRODUCT: STAT
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.