El script se divide en tres partes principales. Primero, PROC FCMP se utiliza para crear cuatro funciones personalizadas: BMI (IMC estándar), newBMI (una variante del IMC), BMIDiff (la diferencia entre los dos IMC) y absBMIDiff (el valor absoluto de esta diferencia). Estas funciones se almacenan en la biblioteca sasuser.cmplib. Segundo, PROC TEMPLATE define un modelo STATGRAPH llamado 'bmi'. Este modelo incluye un rangeAttrMap para colorear las burbujas del gráfico según la diferencia de IMC y un bubblePlot que visualiza la altura, el peso y la diferencia absoluta de IMC. El color de las burbujas indica si el nuevo IMC es superior o inferior al antiguo. Finalmente, PROC SGRENDER utiliza el modelo 'bmi' con los datos de sashelp.class para generar el gráfico, visualizando así la comparación de los dos métodos de cálculo del IMC para cada individuo del conjunto de datos.
Análisis de datos
Type : SASHELP
Los datos utilizados para la representación del gráfico provienen del conjunto de datos `sashelp.class`, que es un conjunto de datos de demostración integrado en SAS y, por lo tanto, interno al sistema.
1 Bloque de código
PROC FCMP
Explicación : Este bloque utiliza `PROC FCMP` para definir cuatro funciones personalizadas que se utilizarán más adelante. `BMI` calcula el Índice de Masa Corporal clásico. `newBMI` calcula una versión alternativa del IMC con una fórmula diferente (potencia 2.5 en lugar de 2). `BMIDiff` calcula la diferencia entre el nuevo IMC y el antiguo. Finalmente, `absBMIDiff` devuelve el valor absoluto de esta diferencia. Estas funciones se compilan y almacenan en la biblioteca `sasuser.cmplib.test` para ser reutilizables. La instrucción `options cmplib=sasuser.cmplib;` hace que estas funciones sean accesibles para los pasos siguientes.
Explicación : Este bloque define un modelo de gráfico SG (SGPLOT) llamado 'bmi' utilizando `PROC TEMPLATE`. Configura un `rangeAttrMap` (`ram1`) para gestionar la coloración de las burbujas: de verde a blanco para las diferencias negativas de IMC (nuevo IMC < antiguo IMC), y de blanco a rojo para las diferencias positivas (nuevo IMC > antiguo IMC). La variable `bmiDiff` se crea dinámicamente evaluando la función `BMIDiff` definida previamente. El título del gráfico se define y se crea un `bubblePlot` donde el tamaño de la burbuja es proporcional al valor absoluto de la diferencia de IMC (`absBMIDiff`), y el color está determinado por `bmiDiff` a través del `rangeAttrMap`. Se añade una leyenda continua para explicar la coloración. Un pie de página indica la fuente de las fórmulas de IMC.
¡Copiado!
proc template;
define statgraph bmi;
beginGraph;
rangeAttrMap name="ram1";
range min - 0 / rangeColorModel=(green white);
range 0 - max / rangeColorModel=(white red);
endRangeAttrMap;
rangeAttrVar var=eval(BMIDiff(height, weight)) attrVar=bmiDiff attrMap="ram1";
entryTitle "BMIs for sashelp.class: New vs Old";
layout overlay;
bubblePlot x=weight y=height size=eval(absBMIDiff(height, weight)) /
name="bp1"
dataTransparency=0.3
colorResponse=bmiDiff
;
continuousLegend "bp1" / title='New - Old' vAlign=bottom;
endLayout;
entryFootnote halign=left "BMI formulae from: http://people.maths.ox.ac.uk/trefethen/bmi.html";
endGraph;
end;
run;
Explicación : Este bloque utiliza `PROC SGRENDER` para generar el gráfico. Especifica que los datos provienen del conjunto de datos `sashelp.class` y que el modelo de gráfico a utilizar es 'bmi', definido en el bloque `PROC TEMPLATE` anterior. Este paso ejecuta la creación visual del diagrama de burbujas, aplicando las funciones FCMP y las reglas de estilo definidas en la plantilla.
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 : URL de referencia para las fórmulas de IMC: http://people.maths.ox.ac.uk/trefethen/bmi.html, citada en el código.
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.