- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Posted 03-12-2009 10:49 AM
(1100 views)
Hi,
Is it possible to find the maximum entry in an array using max function?? The problem is that at each record, there is a different starting point in the array. e,g,
Array Bal(36) balance1-balance36;
if num > 18 then
maxbal = max(of Bal(num) - Bal(num-18), 0);
else
maxbal = max(of Bal(num) - Bal(1) , 0 );
Is it possible to find the maximum entry in an array using max function?? The problem is that at each record, there is a different starting point in the array. e,g,
Array Bal(36) balance1-balance36;
if num > 18 then
maxbal = max(of Bal(num) - Bal(num-18), 0);
else
maxbal = max(of Bal(num) - Bal(1) , 0 );
1 REPLY 1
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
I'm sure there are multiple good solutions here. Since the MAX function isn't too fancy, I actually found it easier to write some code that avoids using the function.
%let levels=18;
/* Setting this up as a macro variable
makes it easy to change */
data test;
set whatever;
array Bal balance1-balance36;
MaxBal=0;
/* Create lower limit for DO loop */
if num >= &levels then
bottom = num - &levels + 1;
else bottom = 1;
/* Cycle from bottom to the value of num */
do i = bottom to num;
if Bal{i} > MaxBal then
MaxBal = Bal{i};
end;
drop i;
run;
In the future, you might have a little more luck posting to the DATA step board for responses on topics like this. No worries though!
http://support.sas.com/forums/forum.jspa?forumID=31
%let levels=18;
/* Setting this up as a macro variable
makes it easy to change */
data test;
set whatever;
array Bal
MaxBal=0;
/* Create lower limit for DO loop */
if num >= &levels then
bottom = num - &levels + 1;
else bottom = 1;
/* Cycle from bottom to the value of num */
do i = bottom to num;
if Bal{i} > MaxBal then
MaxBal = Bal{i};
end;
drop i;
run;
In the future, you might have a little more luck posting to the DATA step board for responses on topics like this. No worries though!
http://support.sas.com/forums/forum.jspa?forumID=31