Dieses Programm generiert zunächst einen kleinen 'cash'-Datensatz. Es führt einen standardmäßigen Student-t-Test durch, um den beobachteten Unterschied zu erhalten. Anschließend wird PROC IML verwendet, um 1000 zufällige Permutationen der Antwortvariablen ('Money') zu generieren, die die Nullhypothese simulieren. Es führt t-Tests für diese 1000 Iterationen durch und vergleicht die Verteilung der simulierten Unterschiede mit dem beobachteten Unterschied, um einen empirischen p-Wert abzuleiten.
Datenanalyse
Type : INTERNE_ERSTELLUNG
Die Daten werden manuell über die DATALINES-Anweisung im ersten DATA-Schritt erstellt.
1 Codeblock
DATA STEP Data
Erklärung : Erstellung des Datensatzes 'cash' mit zwei Variablen: School (Gruppe) und Money (numerischer Wert).
Erklärung : Durchführung des anfänglichen Student-t-Tests für die beobachteten Daten, um den tatsächlichen Mittelwertunterschied zwischen den Gruppen zu berechnen.
Kopiert!
proc ttest data=cash;
class School;
*may need to convert School to numeric;
var Money;
run;
1
PROC TTESTDATA=cash;
2
class School;
3
*may need to convert School to numeric;
4
var Money;
5
RUN;
3 Codeblock
PROC IML Data
Erklärung : Verwendung der IML-Matrixsprache, um die Daten zu lesen, 1000 zufällige Permutationen der Spalte 'Money' (Resampling ohne Zurücklegen) zu generieren und eine große Tabelle 'newds' zu erstellen, die die ursprünglichen Gruppen und die 1000 permutierten Vektoren enthält.
Kopiert!
ods output off;
ods exclude all;
proc iml ;
use cash;
read all var{School Money} into x;
p=t(ranperm(x[, 2], 1000));
paf=x[, 1]||p;
create newds from paf;
append from paf;
quit;
1
ods OUTPUT off;
2
ods exclude all;
3
4
PROC IML ;
5
use cash;
6
read all var{School Money} into x;
7
p=t(ranperm(x[, 2], 1000));
8
paf=x[, 1]||p;
9
create newds from paf;
10
append from paf;
11
QUIT;
4 Codeblock
PROC TTEST Data
Erklärung : Massive Durchführung von t-Tests für die 1000 permutierten Spalten (col2 bis col1001) im Vergleich zur Gruppe (col1). Die Ergebnisse (Konfidenzgrenzen/Unterschiede) werden in der Tabelle 'diff' über ODS OUTPUT erfasst.
Kopiert!
ods output conflimits=diff;
proc ttest data=newds plots=none;
class col1;
var col2 - col1001;
run;
ods output on;
ods exclude none;
1
ods OUTPUT conflimits=diff;
2
3
PROC TTESTDATA=newds plots=none;
4
class col1;
5
var col2 - col1001;
6
RUN;
7
8
ods OUTPUT on;
9
ods exclude none;
5 Codeblock
PROC UNIVARIATE
Erklärung : Analyse der Verteilung der durch Permutation erhaltenen Mittelwertunterschiede (Variable 'mean' in der Ausgabetabelle 'diff') mit Generierung eines Histogramms.
Kopiert!
proc univariate data=diff;
where method="Pooled";
var mean;
histogram mean;
run;
1
PROC UNIVARIATEDATA=diff;
2
where method="Pooled";
3
var mean;
4
histogram mean;
5
RUN;
6 Codeblock
DATA STEP Data
Erklärung : Filterung der Permutationen, deren Mittelwertunterschied so extrem oder extremer ist als der beobachtete Unterschied (hier fest auf 114.6 kodiert). Die resultierende Anzahl der Beobachtungen, geteilt durch 1000, ergibt den geschätzten p-Wert.
Kopiert!
data numdiffs;
set diff;
where method="Pooled";
if abs(mean) >=114.6;
run;
proc print data=numdiffs;
where method="Pooled";
run;
1
DATA numdiffs;
2
SET diff;
3
where method="Pooled";
4
5
IF abs(mean) >=114.6;
6
RUN;
7
8
PROC PRINTDATA=numdiffs;
9
where method="Pooled";
10
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.
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.