aggregation aggregate

Análisis de Ventas Minoristas por Tienda y Categoría

Scénario de test & Cas d'usage

Contexto empresarial

Una cadena de supermercados necesita un resumen diario del rendimiento de sus ventas. El objetivo es agregar los datos de transacciones para calcular los ingresos totales, el valor promedio de la transacción y el número de ventas, agrupados por cada tienda y categoría de producto. Este informe es crucial para la gestión de inventario y las estrategias de marketing.
Sobre el conjunto : aggregation

Agregación de datos y cálculos estadísticos resumidos.

Descubrir todas las acciones de aggregation
Preparación de datos

Creación de una tabla de transacciones de ventas simulada con información de tienda, categoría, fecha y monto.

¡Copiado!
1DATA casuser.VENTAS_DIARIAS;
2 FORMAT Fecha_Venta date9.;
3 DO ID_Tienda = 1 to 5;
4 DO Categoria_Producto = 'Frutas', 'Lácteos', 'Panadería';
5 DO i = 1 to 100;
6 ID_Transaccion = _n_;
7 Fecha_Venta = today() - int(rand('UNIFORM')*30);
8 Monto_Venta = 5 + rand('UNIFORM') * 100;
9 OUTPUT;
10 END;
11 END;
12 END;
13RUN;

Étapes de réalisation

1
Cargar la tabla de ventas en la memoria de CAS (ya realizado en data_prep, este paso es para confirmar la carga).
¡Copiado!
1 
2PROC CASUTIL;
3list tables incaslib='casuser';
4QUIT;
5 
2
Ejecutar la acción `aggregate` para calcular las métricas de ventas agrupadas por tienda y categoría de producto.
¡Copiado!
1PROC CAS;
2 aggregation.aggregate /
3 TABLE={name='VENTAS_DIARIAS', groupBy={'ID_Tienda', 'Categoria_Producto'}},
4 casOut={name='RESUMEN_VENTAS', caslib='casuser', replace=true},
5 varSpecs=[
6 {name='Monto_Venta', agg='SUM', newName='Ventas_Totales'},
7 {name='Monto_Venta', agg='MEAN', newName='Venta_Promedio'},
8 {name='ID_Transaccion', agg='N', newName='Numero_Transacciones'}
9 ];
10RUN;
11QUIT;
3
Verificar los resultados de la agregación.
¡Copiado!
1 
2PROC PRINT
3DATA=casuser.RESUMEN_VENTAS(obs=10);
4RUN;
5 

Resultado esperado


Se espera una tabla de salida 'RESUMEN_VENTAS' en CASUSER. Cada fila de esta tabla debe contener una combinación única de 'ID_Tienda' y 'Categoria_Producto', junto con tres columnas calculadas: 'Ventas_Totales' (la suma de 'Monto_Venta'), 'Venta_Promedio' (la media de 'Monto_Venta') y 'Numero_Transacciones' (el recuento de transacciones).