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

hackathon24-white-horiz.png

2025 SAS Hackathon: There is still time!

Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!

Register Now

Article Tags