BookmarkSubscribeRSS Feed
Tip Semanal: SAS Programación – Retain
CaioFlorencio
SAS Employee

¿Conoce la instrucción RETAIN para un DATA STEP?

/*Ejemplo sencillo */

data vendas;
set sashelp.prdsale;
retain actual predict;

acum_actual+actual  /*es lo mismo que escribir acum_actual=acum_atual+actual */;
acum_predic+predict;
run;

 

Existen varios enfoques para inicializar variables con la declaración RETAIN y cada enfoque tiene su utilidad única según sus necesidades de programación. La siguiente lista muestra algunos ejemplos de especificación e inicialización de variables con la declaración RETAIN:

a) RETAIN" var1; define el valor inicial de var1 como vacío (faltante).

b) RETAIN" var1-var3 0; establece los valores iniciales de var1, var2, var3 en 0.

c) RETAIN var1-var3 (0); solo var1 se establece en 0, var2-3 se establece en vacío.

d) RETAIN var1 0 var2 1 var3 1; establece el valor inicial de var1 en 0, var2 y var3 en 1.

e) RETAIN var1-var3 (0 1); establece los valores iniciales de var1 en 0; var2 en 1, var3 en vacío.

f) RETAIN var1-var3 (1 2 3); o RETAIN var1-var3 (1,2,3); define var1 como 1, var2 como 2, var3 como 3. La coma es opcional.

g) RETAIN; o RETAIN _ALL_; [o _CHAR_, _NUMERIC_]; se retendrán todas las variables. La diferencia es que el primero hace que se retengan todas las variables, mientras que el segundo afecta solo aquellas variables definidas antes de la declaración RETAIN. Si el Se especifica el nombre de la variable en la instrucción RETAIN y no se especifica un valor inicial, la variable no se escribe en el dataset y se escribe una nota que indica que la variable no está inicializada en el registro SAS. Si se especifica un valor inicial, la variable se escribirá en el dataset de salida

 

Referências:

Effective Use of RETAIN Statement in SAS® Programming (Microsoft Word - D14-2009 rough final.doc (mwsug.org))

How to Use the RETAIN Statement in SAS (With Examples) - Statology

Tip Semanal 014: Crear variables acumulativas - SAS Support Communities

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
Article Labels
Article Tags
Contributors