how to get combination of matrix columns

2 次查看(过去 30 天)
I would like to get all the possible combination between two column of a matrix.
supoose my matrix is
matrix =
[1 1 1 1
1 0 0 0
1 0 1 0
0 1 1 0]
combination between column 1 and column 4 can be
column 1 and column 4
column 1 and column 2 and column 4
column 1 and column 3 and column 4
column 1 and column 2 and column 3 and column 4
so column 1 and column 4 should be present in every case.
[I want this using for loop]

回答(1 个)

Guillaume
Guillaume 2016-5-3
Why are 1 and 4 singled out specifically?
As this sounds like homework, I'm not giving you the code, but you can simply:
  1. use a for loop to iterate between 0 and the number of column - number of column singled out, call the index k.
  2. use nchoosek to select all combinations of k elements out of the index of the remaining columns
  3. use the indices returned by nchoosek plus your singled out columns to extract the column combinations.

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by