Statistical programming, matrix languages, and more

Combinations and Permutations

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 6
Accepted Solution

Combinations and Permutations

Dear community,

I am looking for printing all the different combinations of a clinical signs scoring system.

I have six clinical signs (b1,..,b6) which are either normal abnormal (0,1)

I want to print all the 2^6 (64) possible clinical signs association.

I am relatively new with IML of SAS and did not arrive to do it.

please let me know if you have any clue!

I really appreciate


Accepted Solutions
Solution
‎07-19-2017 04:05 PM
SAS Super FREQ
Posts: 3,477

Re: Combinations and Permutations

The simplest way is

proc iml;
allComb = ExpandGrid(0:1, 0:1, 0:1,
                     0:1, 0:1, 0:1 ); 
print allComb;

This solution hard-codes six arguments, If the 'number of clinical signs' might change from study to study,  you can use one of the other techniques in the article "Creating a matrix with all combinations of zeros and ones."

View solution in original post


All Replies
Solution
‎07-19-2017 04:05 PM
SAS Super FREQ
Posts: 3,477

Re: Combinations and Permutations

The simplest way is

proc iml;
allComb = ExpandGrid(0:1, 0:1, 0:1,
                     0:1, 0:1, 0:1 ); 
print allComb;

This solution hard-codes six arguments, If the 'number of clinical signs' might change from study to study,  you can use one of the other techniques in the article "Creating a matrix with all combinations of zeros and ones."

Occasional Contributor
Posts: 6

Re: Combinations and Permutations

Thank you so much!

you solved my problem!

SAS Employee
Posts: 118

Re: Combinations and Permutations

Since you are asking for a full-factorial design, you can instead use the MktEx macro.  It also makes fractional factorial designs, orthogonal arrays, and nonorthogonal designs, all using the same syntax.  You can add the option 'noqc' after 'render' if you do not have the SAS/QC product.  For your particular problem, you could also use PROC PLAN.

 

%mktex(2 ** 6, n=64, levels=0, options=render)

☑ This topic is SOLVED.

Need further help from the community? Please ask a new question.

Discussion stats
  • 3 replies
  • 185 views
  • 2 likes
  • 3 in conversation