El script comienza creando un conjunto de datos interno. Realiza una primera prueba T para observar la diferencia real. Luego, utiliza PROC IML para generar 1000 permutaciones aleatorias de la variable objetivo 'Money'. Estas permutaciones son analizadas por PROC TTEST para generar una distribución empírica de las diferencias de medias bajo la hipótesis nula. Finalmente, PROC UNIVARIATE y un paso DATA calculan el valor p empírico comparando la estadística observada con la distribución simulada.
Análisis de datos
Type : CREATION_INTERNE
Los datos se definen directamente en el script a través de la instrucción datalines en el conjunto de datos 'cash'.
1 Bloque de código
DATA STEP Data
Explicación : Creación del conjunto de datos inicial 'cash' que contiene las variables 'School' y 'Money' con datos integrados.
¡Copiado!
data cash;
input School Money;
datalines;
0 34
0 1200
...
1 3
1 0
;
1
DATA cash;
2
INPUT School Money;
3
4
DATALINES;
5
0 34
6
0 1200
7
...
8
13
9
1 0
10
;
2 Bloque de código
PROC TTEST
¡Copiado!
proc ttest data=cash;
class School;
var Money;
run;
1
PROC TTESTDATA=cash;
2
class School;
3
var Money;
4
RUN;
3 Bloque de código
PROC IML Data
Explicación : Uso del lenguaje matricial IML para leer los datos, generar 1000 permutaciones aleatorias de la columna 'Money' (variable x[,2]) manteniendo 'School' fija, y guardar el resultado en 'newds'.
¡Copiado!
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 Bloque de código
PROC TTEST
¡Copiado!
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 Bloque de código
PROC UNIVARIATE
¡Copiado!
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 Bloque de código
DATA STEP Data
¡Copiado!
data numdiffs;
set diff;
where method="Pooled";
if abs(mean) >=114.6;
run;
1
DATA numdiffs;
2
SET diff;
3
where method="Pooled";
4
5
IF abs(mean) >=114.6;
6
RUN;
7 Bloque de código
PROC PRINT
¡Copiado!
proc print data=numdiffs;
where method="Pooled";
run;
1
2
PROC PRINT
3
DATA=numdiffs;
4
where method="Pooled";
5
RUN;
6
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Documentación relacionada
Aucune documentation spécifique pour cette catégorie.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.