n個の変数値から一度にk個の変数値を取得する場合のすべての組み合わせを変化量の小さい順に生成します。
カテゴリ: | 組み合わせ |
制限事項: | ALLCOMB関数は、%SYSFUNCマクロを使用する場合には実行できません。 |
ループで1から組み合わせ数までの値を割り当てる整数変数を指定します。
各組み合わせの項目数を示す1からn(1とnを含む)までの整数の定数、変数または式を指定します。
すべての数値変数または同じ長さのすべての文字変数を指定します。これらの変数の値は置換されます。
制限事項 | 33個以内で項目を指定します。33個を超える項目の組み合わせを検出する必要がある場合は、CALL ALLCOMBIルーチンを使用します。 |
要件 | ALLCOMB関数を実行する前にこれらの変数を初期化します。 |
ヒント | ALLCOMBを実行すると、最初のk個の変数に1つの組み合わせの値が含まれます。 |
data _null_; array x[5] $3 ('ant' 'bee' 'cat' 'dog' 'ewe'); n=dim(x); k=3; ncomb=comb(n, k); do j=1 to ncomb+1; rc=allcomb(j, k, of x[*]); put j 5. +3 x1-x3 +3 rc=; end; run;
1 ant bee cat rc=0 2 ant bee ewe rc=3 3 ant bee dog rc=3 4 ant cat dog rc=2 5 ant cat ewe rc=3 6 ant dog ewe rc=2 7 bee dog ewe rc=1 8 bee dog cat rc=3 9 bee ewe cat rc=2 10 dog ewe cat rc=1 11 dog ewe cat rc=-1