KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
More than once now I have needed to generate all possible pairs of two vectors in MATLAB which I do with for loops which take up a fair few lines of code i.e. vec1 = 1:4; vec2 = 1:3; i = 0; pairs = zeros([4*3 2]); for val1 = vec1 for val2 = vec2 i = i + 1; pairs(i,1) = val1; pairs(i,2) = val2; end end Generates ... 1 1 1 2 1 3 2 1 2 2 2 3 3 1 3 2 3 3 4 1 4 2 4 3 There must be a better way to do this which is more MATLAB'esque? n.b. nchoosek does not do the reversed pairs which is what I need (i.e. 2 1 as well as 1 2 ), I can't just reverse and append the nchoosek output because the symmetric pairs will be included twice.
Tags (comma-separated)
Save Edits
Cancel