Assigning a 2D matrix

34 次查看(过去 30 天)
Sariha Azad
Sariha Azad 2019-5-31
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 个评论
Raj
Raj 2019-5-31
Your question is not at all clear. What exactly are you looking for? Can you give a better example?
Sariha Azad
Sariha Azad 2019-5-31
I want the iterators as entries, as for i=1:2,for j=1:2, matrix=[1 1;1 2;2 1;2 2]

请先登录,再进行评论。

采纳的回答

KSSV
KSSV 2019-5-31
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

更多回答(2 个)

Sariha Azad
Sariha Azad 2019-6-1
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 2019-6-1
编辑:Stephen23 2019-6-1
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

类别

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