DATA Step, Macro, Functions and more

DIF function order

Reply
New Contributor
Posts: 3

DIF function order

[ Edited ]

data four;
set two;
by x;
diff=dif(total);
if first.x then diff=.;
run;

 

Why i cannot put this way? any difference ? thanks

 

data four;
set two;
by x;

if first.x then diff=.;
diff=dif(total);
run;

Super User
Posts: 23,323

Re: a quick question

[ Edited ]

Order of operations. If you set it missing and then calculate it, it has a value. 

 

If you calculate it, know it’s wrong then set to missing it’s fine, then it stays missing. 

 

DIF like LAG is a queue function

 

https://www.lexjansen.com/phuse/2011/cc/CC08.pdf

 


@okaka23 wrote:

data four;
set two;
by x;
diff=dif(total);
if first.x then diff=.;
run;

 

Why i cannot put this way? any difference ? thanks

 

data four;
set two;
by x;

if first.x then diff=.;
diff=dif(total);
run;


 

Ask a Question
Discussion stats
  • 1 reply
  • 105 views
  • 0 likes
  • 2 in conversation