BookmarkSubscribeRSS Feed
Amber_Nicole94
Obsidian | Level 7

I am using SAS EG and attempting to use the lag function however it is telling me

"ERROR: The LAG function is not supported in PROC SQL, it is only valid within the DATA step." I have sorted the data by the fields I am trying to lag.

 

The goal is within my dataset, I want to create a dummy variable for if a condition is met. Example, if track = last line track AND driver = last line driver AND date equals last line date THEN indicate using a 1, else use a zero.

 

I do all of this using the query builder and creating calculated columns.

 

1 REPLY 1
Reeza
Super User

Well...the error is correct, SQL doesn't have the concept of row order, it operates on the entire data set. 

 

What are you trying to do here? I suspect BY group processing within a data set is more efficient.

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 1160 views
  • 0 likes
  • 2 in conversation