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 2025: Call for Content

Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!

Submit your idea!

Article Tags