SAS9

Dominar las Estadísticas Descriptivas en SAS: PROC MEANS, SUMMARY y TABULATE

Simon 6 vues

En el universo del análisis de datos con SAS©, la producción de estadísticas descriptivas es un paso fundamental. Tres procedimientos se destacan particularmente para estas tareas: PROC MEANS, PROC SUMMARY y PROC TABULATE. Aunque comparten una base común, cada uno posee especificidades y casos de uso precisos.

Este artículo explora sus diferencias, sus respectivos funcionamientos y cómo utilizarlos eficazmente, ya sea a través del código o de las interfaces gráficas como SAS© Enterprise Guide y SAS© Studio.

Dominar las Estadísticas Descriptivas en SAS: PROC MEANS, SUMMARY y TABULATE -

PROC MEANS: La Exploración Directa

El procedimiento PROC MEANS es a menudo el primer reflejo del analista. Su función principal es calcular estadísticas descriptivas para variables, ya sea sobre el conjunto de las observaciones o por grupos.

Sus capacidades incluyen:

  • La estimación de cuantiles (incluida la mediana).

  • El cálculo de los límites de confianza para la media.

  • La identificación de valores extremos.

  • La realización de tests de Student (t-test).

Particularidad principal: Por defecto, PROC MEANS muestra sus resultados directamente en la ventana de salida (Output window).

PROC SUMMARY: La Potencia Discreta

Técnicamente, el procedimiento PROC SUMMARY es idéntico a PROC MEANS en términos de cálculos estadísticos. Ofrece las mismas opciones de tratamiento.

La diferencia clave: A diferencia de MEANS que prioriza la visualización, SUMMARY está diseñado para escribir sus resultados en una tabla de salida (dataset). No muestra nada por defecto en la ventana de resultados, lo que lo hace ideal para preparar datos intermedios sin sobrecargar los informes.

PROC TABULATE: El Formato Avanzado

El procedimiento PROC TABULATE retoma los conceptos de MEANS y SUMMARY pero va mucho más allá en materia de presentación. Está especializado en la visualización de estadísticas descriptivas en forma de tablas jerárquicas.

Sus principales ventajas:

  • Flexibilidad: Permite clasificar los valores de las variables y establecer relaciones jerárquicas complejas entre ellas.

  • Doble Salida: Puede enviar los resultados a la ventana de salida y/o a una tabla de datos.

  • Formato: Ofrece un control total sobre las etiquetas (labels) y el formato de las estadísticas generadas.

Nota sobre SAS© Viya: En el entorno SAS© Viya, estos tres procedimientos utilizan acciones CAS (Cloud Analytic Services) cuando procesan tablas CAS, garantizando así un rendimiento óptimo en grandes volúmenes de datos.

Ejemplos Prácticos (Código)

Aquí hay ejemplos concretos utilizando el conjunto de datos ficticio sashelp.cars, incluido en todas las instalaciones de SAS©.

Uso de MEANS y SUMMARY

El código a continuación ilustra la diferencia de salida. PROC MEANS muestra el resultado, mientras que PROC SUMMARY crea una tabla llamada WORK.summaryout.

1
 
1/* Affichage direct des statistiques */
2PROC MEANS DATA=sashelp.cars;
3 var msrp invoice;
4RUN;
5 
6/* Création d'une table de sortie */
7PROC SUMMARY DATA=sashelp.cars;
8 var msrp invoice;
9 OUTPUT out=WORK.summaryout (LABEL="Table de sortie PROC SUMMARY pour SASHELP.CARS");
10RUN;

Uso de TABULATE para una tabla estructurada

Aquí, creamos una tabla que cruza el tipo de vehículo (en fila) con estadísticas de peso y distancia entre ejes (en columna).

1PROC TABULATE
2 DATA=SASHELP.CARS
3 OUT=WORK.tabulateout (LABEL="Table de sortie PROC TABULATE pour SASHELP.CARS")
4 FORMAT=comma10.2;
5 VAR Weight Wheelbase;
6 CLASS Type / ORDER=freq MISSING;
7 
8 TABLE /* Dimension Ligne */
9 Type,
10 /* Dimension Colonne */
11 N
12 Weight * Range
13 Wheelbase * Mean;
14RUN; QUIT;

Ir más allá: Coloreado condicional con TABULATE

Una de las grandes ventajas de PROC TABULATE es su capacidad para utilizar formatos personalizados para resaltar datos (ej: código de color "semáforo").

1/* Définition du format de couleur */
2PROC FORMAT;
3 VALUE watchit
4 0 - 20000 = 'Green'
5 20001 - 30000 = 'Orange'
6 30001 - 50000 = 'Blue'
7 50001 - 60000 = 'Purple'
8 60001 - high = 'Red';
9RUN;
10 
11/* Application du format comme couleur de fond (foreground) */
12PROC TABULATE DATA=sashelp.cars S=[foreground=watchit.]
13 FORMAT=dollar10.2
14 OUT=WORK.tabulatecolor (LABEL="Table de sortie colorée pour SASHELP.CARS");
15 CLASS type cylinders / MISSING;
16 VAR invoice;
17 
18 TABLE type ALL,
19 Invoice * mean;
20RUN;

Síntesis Comparativa

Para ayudarle a elegir el procedimiento correcto según sus necesidades, aquí tiene una tabla resumen de las principales diferencias funcionales y su disponibilidad en las interfaces gráficas:

CaracterísticaPROC MEANSPROC SUMMARYPROC TABULATE
Objetivo principalExploración rápida y estadísticas estándarCálculo de estadísticas para almacenamiento (ETL)Informes de presentación y tablas complejas
Salida por defectoVentana de resultados (Output)Tabla de datos SAS© (Dataset)Ventana de resultados (Output)
Flexibilidad de diseñoEstándar (Lista vertical)N/A (Estructura de base de datos)Elevada (Tablas cruzadas y jerárquicas)
Soporte SAS© Enterprise GuideSí (Vía Asistente)No (Se requiere código)Sí (Vía Asistente)
Soporte SAS© StudioSí (Vía Tareas)No (Se requiere código)No (Se requiere código)

Aunque PROC MEANS, SUMMARY y TABULATE son similares en las estadísticas descriptivas que generan, se distinguen por la naturaleza de sus salidas y su flexibilidad.

Si PROC MEANS es ideal para una verificación rápida y PROC SUMMARY para la creación de tablas de datos, PROC TABULATE ofrece el mayor control. Su versatilidad a menudo lo convierte en la mejor opción para escenarios que requieren una presentación cuidada y jerarquizada de los datos.