MATLAB ヘルプ センター
(非推奨) 組み合わせの列挙
関数 combnk は推奨されません。代わりに、MATLAB® 関数 nchoosek を使用してください。詳細は、バージョン履歴を参照してください。
combnk
nchoosek
C = combnk(v,k)
C = combnk(v,k) は、ベクトル v から一度に k 個の要素を取り、その可能な組み合わせをすべて含む行列を返します。行列 C は、k 個の列と n!/((n – k)! k!) 個の行をもちます。ここで、n は v に含まれる観測値の数です。
C
v
k
n!/((n – k)! k!)
n
例
すべて折りたたむ
'tendril' という単語に含まれる 4 つの文字のすべての組み合わせから成る文字配列を作成します。
'tendril'
C = combnk('tendril',4);
C は、35 行 4 列の文字配列です。
リストの最後の 5 つの組み合わせを表示します。
last5 = C(31:35,:)
last5 = 5×4 char array 'tedr' 'tenl' 'teni' 'tenr' 'tend'
1 ~ 4 の数字から抽出した 2 つの数字から成るすべての組み合わせをリストします。
C = combnk(1:4,2)
C = 6×2 3 4 2 4 2 3 1 4 1 3 1 2
1:4 は double のベクトルであるため、C は double の行列になります。
1:4
すべての要素の集合。ベクトルとして指定します。
例: [1 2 3 4 5]
[1 2 3 4 5]
例: 'abcd'
'abcd'
データ型: single | double | logical | char
single
double
logical
char
選択する要素の数。非負の整数スカラーとして指定します。k は任意の数値型を指定できますが、実数でなければなりません。
combnk(v,k) では異なる型の入力を組み合わせることができます。
combnk(v,k)
例: 3
3
データ型: single | double
v のすべての組み合わせ。v と同じ型の行列として返されます。C は、k 個の列と n!/((n – k)! k!) 個の行をもちます。ここで、n は v に含まれる観測値の数です。
C の各行には、v から選択された k 項目の組み合わせが格納されます。C の各行の要素は、v 内の出現順と同じ順序でリストされます。
k が n より大きい場合、C は空の行列になります。
combnk は、v に含まれる観測値が 15 個未満の場合に限り実用的です。
関数 combnk は推奨されません。代わりに、MATLAB 関数 nchoosek を使用してください。combnk が削除される予定はありません。
コードを更新するには、関数名 combnk のインスタンスを nchoosek に変更します。入力引数を変更する必要はありません。たとえば、C = nchoosek(v,k) を使用します。出力 C には、ベクトル v から一度に k 個の要素を取る場合の、可能な組み合わせがすべて含まれます。nchoosek から出力された C の順序は、combnk の出力と異なる可能性があることに注意してください。
C = nchoosek(v,k)
関数 nchoosek には、関数 combnk と比べて利点がいくつかあります。
最初の入力引数がスカラー値の場合、nchoosek は二項係数も返します。
nchoosek では、MATLAB Coder™ を使用して機能が拡張されています。
nchoosek は combnk より高速です。
nchoosek | perms | randperm
perms
randperm
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ