El script comienza creando un conjunto de datos 'comp2010' a partir de datos en línea (datalines/cards), calculando variables adicionales. Luego, define una macro `%hw6problem1` que encapsula el procedimiento `PROC GLM` para ajustar un modelo de regresión lineal. Una segunda macro, `%hw6problem2`, utiliza la primera para ajustar dos modelos (uno completo y uno reducido), combina sus estadísticas de salida y calcula manualmente una prueba F para comparar los dos modelos. Finalmente, el script ejecuta esta comparación de modelos dos veces con diferentes configuraciones y genera un informe PDF.
Análisis de datos
Type : CREATION_INTERNE
El conjunto de datos 'comp2010' se crea directamente en el código utilizando un paso DATA con una instrucción 'cards' para la entrada de datos.
1 Bloque de código
ODS
Explicación : Abre un destino ODS para generar un archivo de salida en formato PDF.
¡Copiado!
ods pdf file="HW6NickLipanovich.pdf";
1
ods pdf file="HW6NickLipanovich.pdf";
2 Bloque de código
DATA STEP Data
Explicación : Crea la tabla 'comp2010'. Lee las tres variables 'winper', 'score' y 'save' de los datos en línea (cards) y calcula tres variables adicionales: 'save2', 'scoresave' y 'differential'.
Explicación : Muestra el contenido de la tabla 'comp2010' en la salida de resultados.
¡Copiado!
proc print data=comp2010;
run;
quit;
1
PROC PRINTDATA=comp2010;
2
RUN;
3
QUIT;
4 Bloque de código
MACRO
Explicación : Define una macro `%hw6problem1` que ejecuta el procedimiento GLM (General Linear Model). La macro ajusta un modelo ('model') para una variable dependiente ('outcome') en función de predictores ('modelx'). Opcionalmente puede incluir una variable de clasificación ('classx'). Las estadísticas del modelo se guardan en una tabla de salida ('myoutstat').
Explicación : Define una macro `%hw6problem2` para comparar dos modelos (uno completo y uno reducido). Llama dos veces a la macro `%hw6problem1` para ajustar cada modelo. Luego, a través de pasos DATA, combina los resultados, calcula el estadístico de la prueba F y el valor p asociado para evaluar si el modelo completo es significativamente mejor que el modelo reducido. El resultado de la prueba F se muestra a continuación.
¡Copiado!
%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;
Explicación : Llama a la macro de comparación de modelos `%hw6problem2` dos veces. La primera llamada compara un modelo con 'score' y 'save' como predictores con un modelo más simple con 'differential'. La segunda llamada invierte el orden de la comparación. Los resultados se escriben en las tablas 'ssout' y 'dout'.
Explicación : Cierra el destino ODS PDF, finalizando así la creación del archivo.
¡Copiado!
ods pdf close;
1
ods pdf 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.
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.