all possible combinations of three vectors
104 ビュー (過去 30 日間)
表示 古いコメント
I am trying to find all possible combinations of three vectors (A,B,C). For this, I tried using combvec. However, the result gets me a 1281x1 double, while i expected a matrix of 546*33*649 possibilities.
What i would like to get is:
A: 1,5,6,9,12
B: 1,2,3,4,5,6
C: 3,18,27,69,72
Ans:
1,1,3
1,1,18
1,1,27
etc.
So how do i do this?
0 件のコメント
採用された回答
Guillaume
2017 年 5 月 24 日
One possible way, which doesn't require any toolbox:
[ca, cb, cc] = ndgrid(A, B, C);
combs = [ca(:), cb(:), cc(:)]
5 件のコメント
Bruno Luong
2021 年 4 月 22 日
Just filter out those are not meet the constraints, or you can use this FEX to get directly the combination
allVL1(3,4,'<=')
ans =
0 0 0
0 0 1
0 1 0
1 0 0
0 0 2
0 1 1
0 2 0
1 0 1
1 1 0
2 0 0
0 0 3
0 1 2
0 2 1
0 3 0
1 0 2
1 1 1
1 2 0
2 0 1
2 1 0
3 0 0
0 0 4
0 1 3
0 2 2
0 3 1
0 4 0
1 0 3
1 1 2
1 2 1
1 3 0
2 0 2
2 1 1
2 2 0
3 0 1
3 1 0
4 0 0
その他の回答 (1 件)
Azzi Abdelmalek
2017 年 5 月 24 日
A=[1,5,6,9,12]
B= [1,2,3,4,5,6]
C= [3,18,27,69,72]
[ii,jj,kk]=meshgrid(A,B,C);
ii=permute(ii,[1 3 2]);
jj=permute(jj,[2 1 3])
kk=permute(kk,[3 2 1])
out=[ii(:) jj(:) kk(:)];
0 件のコメント
参考
カテゴリ
Find more on Parallel and Cloud in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!