Solved
Contributor
Posts: 41

# Determine lag of muliple variables in a dataset

I am trying to calculate lag values of multiple variables in a dataset by using two arrays but can't get it to work. Does anyone have any ideas? See attached. Thanks.

Accepted Solutions
Solution
‎08-29-2011 12:55 PM
PROC Star
Posts: 8,165

## Determine lag of muliple variables in a dataset

I think you are trying to do something like:

data data1 (drop=i);

set data0;

by id;

array vars {*} A B C;

array lagvars(3);

do i = 1 to 3;

lagvars(i)=lag(vars(i));

if first.id then call missing(lagvars(i));

end;

run;

All Replies
Solution
‎08-29-2011 12:55 PM
PROC Star
Posts: 8,165

## Determine lag of muliple variables in a dataset

I think you are trying to do something like:

data data1 (drop=i);

set data0;

by id;

array vars {*} A B C;

array lagvars(3);

do i = 1 to 3;

lagvars(i)=lag(vars(i));

if first.id then call missing(lagvars(i));

end;

run;

Contributor
Posts: 41

## Determine lag of muliple variables in a dataset

That worked perfectly, although I changed the second array to hardcode the lag variable names. Thanks!

array lagvars(*) A1 A2 A3;

🔒 This topic is solved and locked.