BookmarkSubscribeRSS Feed
Tips Semanales: SAS Programación - LAG
CaioFlorencio
SAS Employee

LAG es una función que se utiliza dentro de un paso de datos en SAS y puede ayudarle mucho en la búsqueda de valores. La traducción libre significa lo último, lo que quedó atrás, es decir, se quiere buscar el valor/contenido de la variable anterior a la posición de lectura actual en el POS.

 

Veamos un ejemplo para que lo entiendas:

data ejemplo_lag;
  set sashelp.stocks (keep= stock date close);
  fecha_ant = lag(close);
run;

En el resultado de este código, la tabla ejemplo_lag se verá así

 

CaioFlorencio_0-1698410115421.png

Otra información puede tomar los valores anteriores o el 'n' al revés simplemente poner el 'n' en la llamada a la función. Por ejemplo, quiero tomar el segundo valor. Y 3º. Valores anteriores y calcular la media.

 

data ejemplo_lag;
  set sashelp.stocks (keep= stock date close);
  fecha_ant = lag(close);
  fecha_ant2 = lag2(close);
  fecha_ant3 = lag3(close);

  med = mean (fecha_ant, fecha_ant2, fecha_ant3);
run;

Observe lo que sucede en el resultado de salida.

CaioFlorencio_0-1698426424559.png

 

Para obtener más detalles sobre LAG, consulte la documentación oficial de SAS:

LAG Function :: SAS(R) 9.3 Functions and CALL Routines: Reference

sas-innovate-wordmark-2025-midnight.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9. Sign up by March 14 for just $795.


Register now!

Article Tags