Das Skript beginnt mit der Erstellung eines Datensatzes 'comp2010' aus Online-Daten (datalines/cards), wobei zusätzliche Variablen berechnet werden. Anschließend wird ein Makro `%hw6problem1` definiert, das das Verfahren `PROC GLM` zur Anpassung eines linearen Regressionsmodells kapselt. Ein zweites Makro, `%hw6problem2`, verwendet das erste Makro, um zwei Modelle (ein vollständiges und ein reduziertes) anzupassen, kombiniert deren Ausgabestatistiken und berechnet manuell einen F-Test, um die beiden Modelle zu vergleichen. Schließlich führt das Skript diesen Modellvergleich zweimal mit unterschiedlichen Konfigurationen aus und generiert einen PDF-Bericht.
Datenanalyse
Type : CREATION_INTERNE
Der Datensatz 'comp2010' wird direkt im Code mit einem DATA-Schritt und einer 'cards'-Anweisung für die Dateneingabe erstellt.
1 Codeblock
ODS
Erklärung : Öffnet ein ODS-Ziel, um eine Ausgabedatei im PDF-Format zu generieren.
Kopiert!
ods pdf file="HW6NickLipanovich.pdf";
1
ods pdf file="HW6NickLipanovich.pdf";
2 Codeblock
DATA STEP Data
Erklärung : Erstellt die Tabelle 'comp2010'. Liest die drei Variablen 'winper', 'score' und 'save' aus den Inline-Daten (cards) und berechnet drei zusätzliche Variablen: 'save2', 'scoresave' und 'differential'.
Erklärung : Zeigt den Inhalt der Tabelle 'comp2010' in der Ausgabe an.
Kopiert!
proc print data=comp2010;
run;
quit;
1
PROC PRINTDATA=comp2010;
2
RUN;
3
QUIT;
4 Codeblock
MACRO
Erklärung : Definiert ein Makro `%hw6problem1`, das das GLM-Verfahren (General Linear Model) ausführt. Das Makro passt ein Modell ('model') für eine abhängige Variable ('outcome') basierend auf Prädiktoren ('modelx') an. Es kann optional eine Klassifikationsvariable ('classx') enthalten. Die Modellstatistiken werden in einer Ausgabetabelle ('myoutstat') gespeichert.
Erklärung : Definiert ein Makro `%hw6problem2` zum Vergleich von zwei Modellen (ein vollständiges und ein reduziertes). Es ruft das Makro `%hw6problem1` zweimal auf, um jedes Modell anzupassen. Anschließend kombiniert es über DATA-Schritte die Ergebnisse, berechnet die F-Teststatistik und den zugehörigen p-Wert, um zu beurteilen, ob das vollständige Modell signifikant besser ist als das reduzierte Modell. Das Ergebnis des F-Tests wird anschließend angezeigt.
Kopiert!
%macro hw6problem2 (outcome,classx1,classx2,modelx1,modelx2,myoutstat1,myoutstat2,indata);
%hw6problem1 (&outcome,&classx1,&modelx1,&myoutstat1,&indata);
%hw6problem1 (&outcome,&classx2,&modelx2,&myoutstat2,&indata);
data fullvsreduced;
set &myoutstat1 &myoutstat2;
if _type_="ERROR";
run;
proc sort data=fullvsreduced;
by df;
run;
data fullvsreduced2;
set fullvsreduced;
fullss=lag(ss);
fulldf=lag(df);
num = (ss-fullss)/(df-fulldf);
den = fullss/fulldf;
f = num/den;
pvalue=1-cdf('f', f, df-fulldf, fulldf);
keep f pvalue;
if _n_=1 then delete;
run;
proc print data=fullvsreduced2;
run;
%mend;
Erklärung : Ruft das Modellvergleichsmakro `%hw6problem2` zweimal auf. Der erste Aufruf vergleicht ein Modell mit 'score' und 'save' als Prädiktoren mit einem einfacheren Modell mit 'differential'. Der zweite Aufruf kehrt die Reihenfolge des Vergleichs um. Die Ergebnisse werden in die Tabellen 'ssout' und 'dout' geschrieben.
Erklärung : Schließt das ODS-PDF-Ziel und finalisiert somit die Dateierstellung.
Kopiert!
ods pdf close;
1
ods pdf close;
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.
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.