El script comienza creando un conjunto de datos interno 'toxoplasmosis' a través de un DATA STEP y datalines, incluyendo variables para el número de éxitos (t), el número total de ensayos (m) y una variable 'rain' (lluvia) que se copia en 'z'. Luego, la variable 'z' se estandariza utilizando PROC STDIZE. Se utiliza una PROC GLIMMIX para ajustar un modelo lineal generalizado mixto con un enlace logit y una distribución binomial, modelando 't/m' en función de 'z', 'z*z' y 'z*z*z'. Las predicciones del modelo se exportan para el cálculo de la estadística de puntuación. Un DATA STEP subsiguiente calcula los términos intermedios necesarios para la prueba. PROC MEANS agrega estos términos, y un último DATA STEP calcula la estadística Z de la prueba de puntuación y su valor p asociado. Finalmente, PROC PRINT muestra los resultados en una salida HTML formateada.
Análisis de datos
Type : CREACION_INTERNA
Los datos se crean directamente en el script a través de un DATA STEP y 'datalines'.
1 Bloque de código
DATA STEP Data
Explicación : Este bloque DATA STEP crea el conjunto de datos 'toxoplasmosis' leyendo datos brutos (t, m, rain) directamente de las 'datalines'. Se crea una nueva variable 'z' como una copia de la variable 'rain'.
Explicación : Este procedimiento estandariza la variable 'z' en el conjunto de datos 'toxoplasmosis'. El conjunto de datos de salida sobrescribe el original, asegurando que los cálculos posteriores utilicen la versión estandarizada de 'z'.
¡Copiado!
proc stdize data=toxoplasmosis out=toxoplasmosis;
var z;
run;
1
2
PROC STDIZE
3
DATA=toxoplasmosis out=toxoplasmosis;
4
var z;
5
6
RUN;
7
3 Bloque de código
PROC GLIMMIX
Explicación : PROC GLIMMIX se utiliza para ajustar un modelo lineal generalizado mixto. El modelo especifica una respuesta binomial (t/m), una función de enlace logit, e incluye 'z', 'z*z' y 'z*z*z' como predictores. La opción 's' solicita estadísticas de resumen. La cláusula 'output' crea un nuevo conjunto de datos 'pdata' que contiene las probabilidades predichas ('pi') sin los efectos aleatorios (noblup) y en la escala de respuesta (ilink).
Explicación : Este DATA STEP lee el conjunto de datos 'pdata' (creado por GLIMMIX) y calcula varias variables intermedias ('pic', 'pipic', 'mpi', 't_mpi', 'pit_mpi', 'tpic', 'mm_1', 'aux') necesarias para la fórmula de la estadística de prueba de puntuación de Dean. Solo 'aux' y 'mm_1' se mantienen para los pasos posteriores.
¡Copiado!
data pdata;
set pdata;
pic = 1 - pi;
pipic = pi * pic;
mpi = m * pi;
t_mpi = t - mpi;
pit_mpi = pi * t_mpi;
tpic = t * pic;
mm_1 = m * (m-1);
aux = ( t_mpi*t_mpi + pit_mpi - tpic ) / pipic;
keep aux mm_1;
run;
1
DATA pdata;
2
SET pdata;
3
pic = 1 - pi;
4
pipic = pi * pic;
5
mpi = m * pi;
6
t_mpi = t - mpi;
7
pit_mpi = pi * t_mpi;
8
tpic = t * pic;
9
mm_1 = m * (m-1);
10
aux = ( t_mpi*t_mpi + pit_mpi - tpic ) / pipic;
11
keep aux mm_1;
12
RUN;
5 Bloque de código
PROC MEANS
Explicación : PROC MEANS se utiliza aquí para calcular la suma de las variables 'aux' y 'mm_1' en todo el conjunto de datos 'pdata'. El resultado se almacena en un nuevo conjunto de datos llamado 'new', y la opción 'noprint' suprime la visualización de la salida predeterminada de PROC MEANS.
¡Copiado!
proc means data=pdata sum noprint;
var aux mm_1;
output out=new sum=aux mm_1;
run;
1
PROC MEANSDATA=pdata sum noprint;
2
var aux mm_1;
3
OUTPUT out=new sum=aux mm_1;
4
RUN;
6 Bloque de código
DATA STEP
Explicación : Este DATA STEP lee el conjunto de datos 'new' (que contiene las sumas de 'aux' y 'mm_1') y calcula la estadística Z de la prueba de puntuación, así como su valor p ('pval'). Se aplican formatos y etiquetas a las variables para una mejor presentación.
¡Copiado!
data new;
set new;
label Z = "GOF Test";
label PVal = "P-Value";
format Z 8.2 Pval pvalue6.;
z = aux / sqrt( 2*mm_1 );
pval = 1 - probnorm( z );
run;
1
DATA new;
2
SET new;
3
label Z = "GOF Test";
4
label PVal = "P-Value";
5
FORMAT Z 8.2 Pval pvalue6.;
6
z = aux / sqrt( 2*mm_1 );
7
pval = 1 - probnorm( z );
8
RUN;
7 Bloque de código
PROC PRINT
Explicación : Este bloque genera la salida final. ODS HTML se activa para dirigir la salida a un archivo HTML (o al entorno SAS Studio). Se define un título. PROC PRINT se utiliza para mostrar las variables 'z' (estadística de la prueba) y 'pval' (valor p) del conjunto de datos 'new'. Las opciones 'noobs' suprimen el número de observación y 'label' utiliza las etiquetas definidas para los encabezados de columna. Luego se cierra ODS HTML.
¡Copiado!
ods html;
title "Score Test Statistic, Dean (1992)";
proc print data=new noobs label;
var z pval;
run;
ods html close;
1
ods html;
2
title "Score Test Statistic, Dean (1992)";
3
PROC PRINTDATA=new noobs label;
4
var z pval;
5
RUN;
6
ods html close;
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.
Información de copyright : Score Test Statistic, Dean (1992). Example from Efron (1978, 1986).
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.