Help using Base SAS procedures

Macro for generating combination

Reply
N/A
Posts: 0

Macro for generating combination

Hi all,

I am trying to write a macro function that produces combination of strings within a macro variable

For instance when
1.Macr_var = a;
Then call
%calc(a);

2.Macr_var = a b;

Then call

%calc(a b);
%calc(a);
%calc(b);


3. Macr_var = a b c;

Then call

%calc(a b c);
%calc(a);
%calc(b);
%calc(c);
%calc(a b);
%calc(a c);
%calc(b c);

4. Macr_var = a b c d;
Then call

%calc(a b c d);
%calc(a);
%calc(b);
%calc(c);
%calc(d);
%calc(a b);
%calc(a c);
%calc(a d);
%calc(b c);
%calc(b d);
%calc(c d)
%calc(a b d);
%calc(a c d);
%calc(b c d);

I was thinking of using do loops but it seems very confusing on how to implement something like this in loops.

Would be great if you guys could provide some kind of algorithm that I could use

Thanks,

L
Respected Advisor
Posts: 3,799

Re: Macro for generating combination

Posted in reply to deleted_user
SAS has all the tools you need look a COMB and LEXCOMB functions/call routines.
Ask a Question
Discussion stats
  • 1 reply
  • 163 views
  • 0 likes
  • 2 in conversation