## Array problem?

Solved
Occasional Contributor
Posts: 8

# Array problem?

Hi there,

Based on the image attached above, really appreciate if someone can guide me on how to get the exclusion figures in the yellow box. Does it require the usage of array programming?

I'm stuck on writing the code for the exclusion calculation.

data summ(drop= t1 t2 t3 t4);

set w1;

base = coalesce(t1,t2,t3,t4);

/** stuck here for exclusion calculation **/

run;

Anyone's help will be greatly appreciated! Thanks.

Accepted Solutions
Solution
‎04-19-2016 10:41 AM
Super User
Posts: 6,761

## Re: Array problem?

Here are a couple of statements you could add to the DATA step:

exclusion = - dif(base);

if _n_ = 1 then exclusion = 0;

All Replies
Solution
‎04-19-2016 10:41 AM
Super User
Posts: 6,761

## Re: Array problem?

Here are a couple of statements you could add to the DATA step:

exclusion = - dif(base);

if _n_ = 1 then exclusion = 0;

Occasional Contributor
Posts: 8

## Re: Array problem?

Hi Astounding,

I have just started using SAS a few months back. Thank you for introducing me to the DIF function. Have never used this before. Can't wait to try this at work tomorrow.

Again, many thanks!

Super Contributor
Posts: 319

## Re: Array problem?

From the same category there also is lag function. Of course carefulness shall be paid when using this function and reading the documention might a good start:

http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000212547.htm

data have;
input item t1 t2 t3 t4 ;
datalines;
1 700 . . .
2 . 650 . .
3 . . 630 .
4 . . . 620
;
run;

data want;
set have;

base = coalesce(t1,t2,t3,t4);
base_prec=lag(base);
exclusion=ifn(base_prec,base_prec-base,0);
run;

Occasional Contributor
Posts: 8

## Re: Array problem?

Thank you Loko and noted. Will go through the documentation and explore more on the lag function. Thanks again!

🔒 This topic is solved and locked.