10行20列の行列か​ら、7行20列の全て​の組み合わせを作成す​ることはできますか?

10行20列の行列があります。この行列から、7 行20列となる全ての組み合わせを生成する方法を教えてください。

 채택된 답변

MathWorks Support Team
MathWorks Support Team 2016년 11월 18일

0 개 추천

N 個から K 個を抽出する組み合わせを取得する関数である NCHOOSEK 関数を使用することができます。
以下は、その例です。
 
A=rand(10,20); % 元の行列を定義
C = nchoosek(1:10,7); % 1から10までを 7 個取り出す全組み合わせを計算
K=zeros(size(C,2),size(A,2),size(C,1)); % 配列の事前確保
for k=1:size(C,1)
K(:,:,k)=A(C(k,:),:); % 選択された行を用いてデータを抽出
end
実行結果として、変数 K に 7行20列となる全組み合わせを 3次元方向に格納しています。

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 離散数学에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!