Este script configura una sesión CAS y carga la tabla SASHELP.BASEBALL en la memoria CAS. Demuestra el uso de las opciones de conjunto de datos 'partition=' y 'orderby=' para organizar físicamente los datos en los nodos de cálculo, lo que optimiza los procesamientos posteriores por grupo (BY). Un segundo DATA Step ilustra este uso con un cálculo de contador acumulativo (RETAIN) por equipo.
Análisis de datos
Type : SASHELP
Los datos de origen provienen de la biblioteca estándar SASHELP (tabla BASEBALL).
1 Bloque de código
CONFIGURATION
Explicación : Inicialización de la conexión CAS. Crea un libref 'CASWORK' que apunta a la caslib 'casuser', lo define como biblioteca predeterminada (USER) y asigna todas las caslibs visibles.
¡Copiado!
libname CASWORK cas caslib=casuser;
options USER = CASWORK;
caslib _all_ assign;
%put &_sessref_;
1
LIBNAME CASWORK cas caslib=casuser;
2
options USER = CASWORK;
3
caslib _all_ assign;
4
%put &_sessref_;
2 Bloque de código
DATA STEP Data
Explicación : Creación de una tabla CAS particionada y ordenada. La opción 'partition' distribuye los datos por división y orden de fila, y 'orderby' asegura la ordenación dentro de las particiones, optimizando los accesos futuros.
¡Copiado!
data caswork.baseball(partition=(div row_order) orderby=(div row_order));
set sashelp.baseball;
row_order = _n_;
run;
1
DATA caswork.baseball(partition=(div row_order) orderby=(div row_order));
2
SET sashelp.baseball;
3
row_order = _n_;
4
RUN;
3 Bloque de código
DATA STEP Data
Explicación : Procesamiento de datos por grupo (BY DIV TEAM). Calcula un contador secuencial para cada equipo utilizando la instrucción RETAIN y la variable automática first.team.
¡Copiado!
data caswork.baseball2;
set caswork.baseball;
retain count;
BY DIV TEAM;
if first.team then
count=0;
count+1;
run;
1
DATA caswork.baseball2;
2
SET caswork.baseball;
3
retain count;
4
BY DIV TEAM;
5
IF first.team THEN
6
count=0;
7
count+1;
8
RUN;
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.