El script inicializa un entorno CAS configurando una libname 'CASWORK' para la caslib 'casuser' y redirigiendo las tablas de un solo nivel a esta caslib. Luego carga el conjunto de datos 'sashelp.baseball' en una tabla CAS llamada 'casuser.baseball'. Un paso de limpieza elimina una tabla agregada anterior ('casuser.baseball_groupby') si existe. A continuación, se ilustran dos métodos de agregación: el primero utiliza 'PROC FEDSQL' para calcular la suma de los 'hits' ('nhits') agrupados por división ('div') y equipo ('team') y almacena el resultado en 'baseball_groupby'. El segundo enfoque utiliza la acción CAS 'simple.groupBy' a través de 'PROC CAS' para realizar una agregación similar en la tabla 'baseball' sumando 'nhits' y agrupando por 'DIV' y 'TEAM', con el resultado almacenado en 'casl_baseball_groupby'.
Análisis de datos
Type : SASHELP
El conjunto de datos de origen es 'sashelp.baseball', una tabla de demostración integrada en SAS. Esta tabla se copia luego en el motor CAS bajo 'casuser.baseball' para permitir las operaciones CAS.
1 Bloque de código
Configuración CAS
Explicación : Este bloque configura el acceso al motor Cloud Analytic Services (CAS). Define una libname 'CASWORK' que apunta a la caslib 'casuser', permitiendo que las tablas CAS sean referenciadas como tablas SAS. La opción 'options USER = CASWORK;' redirige la creación de tablas SAS de un solo nivel a esta caslib CAS, asegurando que se creen en CAS. Finalmente, 'caslib _all_ assign;' garantiza que todas las caslibs estén activadas y listas para usar.
¡Copiado!
/* CAS Enabled */
/* CASL GROUPBY Action Example */
/* LIBNAME using the CAS engine */
libname CASWORK cas caslib=casuser;
/* Changing the default location of all one level named tables */
/* from SASWORK to CASWORK */
options USER = CASWORK;
%put &_sessref_;
caslib _all_ assign;
1
/* CAS Enabled */
2
/* CASL GROUPBY Action Example */
3
4
/* LIBNAME using the CAS engine */
5
LIBNAME CASWORK cas caslib=casuser;
6
7
/* Changing the default location of all one level named tables */
8
/* from SASWORK to CASWORK */
9
options USER = CASWORK;
10
11
%put &_sessref_;
12
13
caslib _all_ assign;
2 Bloque de código
DATA STEP Data
Explicación : Este DATA STEP crea una nueva tabla CAS llamada 'casuser.baseball' copiando el contenido del conjunto de datos SAS integrado 'sashelp.baseball'. Esto hace que los datos estén disponibles en el entorno CAS para su posterior procesamiento.
¡Copiado!
data casuser.baseball;
set sashelp.baseball;
run;
1
2
DATA casuser.baseball;
3
SET sashelp.baseball;
4
RUN;
5
3 Bloque de código
PROC DELETE
Explicación : Este bloque utiliza 'PROC DELETE' para eliminar la tabla 'casuser.baseball_groupby' si existe. Es una buena práctica de limpieza antes de recrear una tabla con el mismo nombre, evitando así errores o datos obsoletos.
¡Copiado!
proc delete data=casuser.baseball_groupby;
run;
1
PROC DELETEDATA=casuser.baseball_groupby;
2
RUN;
4 Bloque de código
PROC FEDSQL Data
Explicación : Este bloque utiliza 'PROC FEDSQL' para realizar una agregación de datos directamente en CAS. La opción 'options caslib="casuser"' define la caslib predeterminada para las operaciones FEDSQL. La consulta SQL calcula la suma de los 'hits' ('nhits') y agrupa los resultados por 'div' (división) y 'team' (equipo), creando una nueva tabla CAS llamada 'baseball_groupby'.
¡Copiado!
options caslib="casuser";
proc fedsql sessref=casauto;
create table baseball_groupby
as
(select sum(nhits) as nhits_sum
from baseball
group by div, team) ;
quit;
1
options caslib="casuser";
2
PROC FEDSQL sessref=casauto;
3
create TABLE baseball_groupby
4
as
5
(select sum(nhits) as nhits_sum
6
from baseball
7
group BY div, team) ;
8
QUIT;
5 Bloque de código
PROC CAS (Acción simple.groupBy) Data
Explicación : Este bloque utiliza 'PROC CAS' para interactuar con el motor CAS y ejecutar una acción CAS específica: 'simple.groupBy'. Esta acción realiza una agregación. Toma como entrada las variables 'DIV' y 'TEAM' para la agrupación ('inputs'), 'nhits' como variable de ponderación/suma ('weight'), y 'SUM' como función de agregación ('aggregator'). La tabla de origen es 'baseball' y el resultado se guarda en una nueva tabla CAS llamada 'casl_baseball_groupby', reemplazando cualquier tabla existente con el mismo nombre.
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.