Publicado el :
Estadística CREATION_INTERNE

Prueba de GOF de Tarone (1979)

Este código también está disponible en: Deutsch English Français
En espera de validación
El script comienza definiendo un conjunto de datos `kupper_haseman` a través de `datalines`. Luego calcula la razón `t/m` usando `PROC SURVEYMEANS` y almacena este valor en una macrovariable `Pi`. Siguen pasos `DATA` para calcular variables intermedias necesarias para la fórmula de la prueba GOF, incluidas las contribuciones individuales a la estadística. `PROC MEANS` se utiliza para sumar estas contribuciones. Finalmente, otro paso `DATA` calcula la estadística Chi-cuadrado final (`X2`) y su p-valor (`Pval`) usando la función `probchi`. Los resultados se presentan en una salida HTML a través de `PROC PRINT`.
Análisis de datos

Type : CREATION_INTERNE


Los datos utilizados, `kupper_haseman`, se crean internamente directamente en el script a través de una instrucción `datalines`. Provienen de Kupper y Haseman (1978).

1 Bloque de código
DATA STEP Data
Explicación :
Este bloque crea el conjunto de datos `kupper_haseman` que contiene las observaciones `t` (número de éxitos) y `m` (número de ensayos) utilizadas para la prueba de bondad de ajuste. Los datos se integran directamente en el script a través de la instrucción `datalines`.
¡Copiado!
1DATA kupper_haseman;
2 INPUT t m;
3 DATALINES;
4 0 5
5 2 5
6 1 7
7 0 8
8 2 8
9 3 8
10 0 9
11 4 9
12 1 10
13 6 10
14 ;
2 Bloque de código
PROC SURVEYMEANS
Explicación :
Este bloque utiliza `PROC SURVEYMEANS` para calcular la razón de `t` sobre `m` a partir del conjunto de datos `kupper_haseman`. El resultado de la razón estimada se almacena en un conjunto de datos temporal llamado `Ratio`. Las instrucciones `ods select none` y `ods select all` se utilizan para suprimir la visualización de las salidas estándar del procedimiento.
¡Copiado!
1ods select none;
2 ods OUTPUT Ratio=Ratio;
3 PROC SURVEYMEANS DATA=kupper_haseman;
4 ratio t/m;
5 RUN;
6 ods select all;
3 Bloque de código
DATA STEP
Explicación :
Este bloque `DATA` lee el conjunto de datos `Ratio` (que contiene la razón calculada) y utiliza la función `call symput` para asignar el valor de la variable `Ratio` a una macrovariable llamada `Pi`. `trim(left(Ratio))` asegura que el valor esté limpio (sin espacios innecesarios) antes de ser almacenado en la macrovariable.
¡Copiado!
1DATA Ratio;
2 SET Ratio;
3 call symput('Pi',trim(left(Ratio)));
4 RUN;
4 Bloque de código
DATA STEP
Explicación :
Este bloque `DATA` crea el conjunto de datos `out1` a partir de `kupper_haseman`. Calcula varias variables intermedias (`pi`, `pic`, `pipic`, `mpi`, `t_mpi`, `pit_mpi`, `tpic`, `mm_1`, `aux`) esenciales para la fórmula de la prueba GOF de Tarone. La macrovariable `&Pi` se utiliza para la probabilidad estimada. Solo `aux` y `mm_1` se conservan para los pasos siguientes.
¡Copiado!
1DATA out1;
2 SET kupper_haseman;
3 pi = Π
4 pic = 1 - pi;
5 pipic = pi * pic;
6 mpi = m * pi;
7 t_mpi = t - mpi;
8 pit_mpi = pi * t_mpi;
9 tpic = t * pic;
10 mm_1 = m * (m-1);
11 aux = ( t_mpi*t_mpi + pit_mpi - tpic ) / pipic;
12 keep aux mm_1;
13 RUN;
5 Bloque de código
PROC MEANS
Explicación :
Este bloque utiliza `PROC MEANS` para calcular las sumas de las variables `aux` y `mm_1` a partir del conjunto de datos `out1`. Los resultados agregados (las sumas) se almacenan en un nuevo conjunto de datos `out2`. La opción `noprint` suprime la visualización predeterminada de las estadísticas de `PROC MEANS`.
¡Copiado!
1PROC MEANS DATA=out1 sum noprint;
2 var aux mm_1;
3 OUTPUT out=out2 sum=aux mm_1;
4 RUN;
6 Bloque de código
DATA STEP
¡Copiado!
1DATA out2;
2 SET out2;
3 label X2 = "GOF Test";
4 label PVal = "P-Value";
5 FORMAT X2 8.2 Pval pvalue6.;
6 x2 = aux / sqrt( 2*mm_1 );
7 x2 = x2 * x2;
8 pval = 1 - probchi(x2,1,0);
9 RUN;
7 Bloque de código
PROC PRINT
¡Copiado!
1ods html;
2 title "Tarone (1979) GOF Test";
3 PROC PRINT DATA=out2 noobs label;
4 var x2 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 : Tarone (1979) Two-sided GOF test H0:Binomial Distribution Versus H1:Generalized Binomial Distribution with Additive Interaction (Altham, 1978) Altham's model was simultaneously proposed by Kupper and Haseman (1978) and termed 'Correlated Binomial Model' Data below were taken from Kupper and Haseman (1978, page 75)