Assigning a 2D matrix

155 views (last 30 days)
Sariha Azad
Sariha Azad on 31 May 2019
Commented: Sariha Azad on 1 Jun 2019
I have to create a 2D matrix, where the row number is unknown. I will have to find the row number.
Say, for i=1:5
for j=1:3
I want to create a 2D matrix with 2 columns, where the entries will be like [i j]
How should I write the code?
  2 Comments
Raj
Raj on 31 May 2019
Your question is not at all clear. What exactly are you looking for? Can you give a better example?
Sariha Azad
Sariha Azad on 31 May 2019
I want the iterators as entries, as for i=1:2,for j=1:2, matrix=[1 1;1 2;2 1;2 2]

Sign in to comment.

Accepted Answer

KSSV
KSSV on 31 May 2019
If you know column numbers and don;t know row number; you can initialize as below;
iwant = zeros([],col) ;
If you know row numbers and dont know column number; you can initialize as below;
iwant = zeros(row,[] ;
But, it seems in your case:
iwant = zeros(5,3) ;
for i=1:5
for j=1:3
iwant(i,j) = rand ;
end
end
  1 Comment
Sariha Azad
Sariha Azad on 31 May 2019
I want to make like for i=1:2,for j=1;2,
iwant=[1 1;1 2; 2 1; 2 2]

Sign in to comment.

More Answers (2)

Sariha Azad
Sariha Azad on 1 Jun 2019
Well, I got this one.
a=[0 0];
for i=1:5
for j=1:3
a=[a;i j];
end
end
disp(a)

Stephen23
Stephen23 on 1 Jun 2019
Edited: Stephen23 on 1 Jun 2019
Simpler without a loop:
>> [X,Y] = ndgrid(1:3,1:5);
>> M = [X(:),Y(:)]
M =
1 1
2 1
3 1
1 2
2 2
3 2
1 3
2 3
3 3
1 4
2 4
3 4
1 5
2 5
3 5

Tags

Community Treasure Hunt

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

Start Hunting!