Los datos se definen directamente en el script a través de la instrucción CARDS en el paso DATA 'a'.
1 Bloque de código
DATA STEP Data
Explicación : Inicialización de las opciones gráficas globales y creación del conjunto de datos fuente 'a' que contiene las variables TEST (categoría) y BREAKS (valor).
Explicación : Ordenamiento de los datos por la variable de grupo 'TEST' para preparar la agregación.
¡Copiado!
/* Sort data by variable TEST */
proc sort; by TEST; run;
1
/* Sort
2
data by variable TEST */
3
PROC SORT;
4
BY TEST;
5
6
RUN;
7
3 Bloque de código
PROC MEANS Data
Explicación : Cálculo de las estadísticas descriptivas (media, desviación estándar, min, max) agrupadas por 'TEST'. Los resultados se almacenan en la tabla de salida 'b'.
¡Copiado!
/**************************************************/
/* Create an output data set, B using PROC MEANS */
/* that contain new variables, MEAN, STD, STDERR, */
/* MIN, and MAX. */
/**************************************************/
proc means mean std stderr min max data=a;
by TEST;
output out=b mean=mean min=min max=max;
run;
Explicación : Creación de un conjunto de datos especial 'Annotate'. Define comandos gráficos (move, draw) para dibujar líneas azules del min al max, y marcadores rojos para la media, el min y el max. Utiliza el sistema de coordenadas de datos (xsys='2', ysys='2').
¡Copiado!
/****************************************************************/
/* Create an annotate data set, ANNO to draw the bars at +/- 1, */
/* 2, or 3 Standard Deviation or Standard Error of the mean. */
/****************************************************************/
data anno;
retain xsys ysys '2' when 'a';
length color function $8 ;
set b;
/* Draw the horizontal line from min to max */
function='move'; xsys='2'; ysys='2'; yc=TEST; x=min; color='blue'; output;
function='draw'; x=max; color='blue'; size=2; output;
/* Draw the MEAN horizontal line making the SIZE bigger */
function='move'; xsys='2';ysys='2';yc=TEST;x=mean; color='red'; output;
function='draw'; x=mean; ysys='9'; y=+2; size=4; output;
function='draw'; x=mean; y=-4; size=4; output;
/* Draw the line for the MIN value */
function='move';xsys='2';ysys='2';yc=TEST;x=min;color='red';output;
function='draw';x=min;ysys='9';y=+2;size=2;output;
function='draw';x=min;y=-4;size=2;output;
/* Draw the line for the MAX value */
function='move';xsys='2';ysys='2';yc=TEST;x=max;color='red';output;
function='draw';x=max;ysys='9';y=+2;size=2;output;
function='draw';x=max;y=-4;size=2;output;
run;
Explicación : Generación del gráfico final. El procedimiento GPLOT utiliza el conjunto de datos 'anno' para superponer los dibujos personalizados a los ejes definidos. El eje horizontal se fija de 0 a 100.
¡Copiado!
axis1 order=(0 to 100 by 10);
symbol1 i=none v=none c=black;
proc gplot data=b ;
plot test*mean / anno=anno haxis=axis1 href=30 60 90; /* The HREF= option draws reference lines */
run;
quit;
1
axis1 order=(0 to 100BY10);
2
symbol1 i=none v=none c=black;
3
4
PROC GPLOTDATA=b ;
5
plot test*mean / anno=anno haxis=axis1 href=306090; /* The HREF= option draws reference lines */
6
RUN;
7
QUIT;
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.