Reshaping Structure in every iteration

Hi
I'm iterating a loop. And in each iteration, i make random numbers by using rand function. And in every new iteration, I increase the size of matrix (which is created by rand function).
What i'm doing is storing every random matrix in structure in every iteration. So, what i need is to reshape the structure in every iteration.(to be Rows*1).
My question is, how can i reshape the structure ?
I'll really appreciate it if some one can help me with that.
Thanks a lot.

7 Commenti

What do you call "structure"? A STRUCT array? A struct containing arrays as fields? Please post the current code.
mohammad rashidi
mohammad rashidi il 8 Feb 2022
Modificato: Jan il 8 Feb 2022
R=5;
for i=1:10
M(:,i).position=rand(R,1);
R=R+10;
end
This is not what i'm working on , but that's similar.
Thank you.
Your code seems to work. What specifically needs to be changed in the behavior?
>> R=5;
for i=1:10
M(:,i).position=rand(R,1);
R=R+10;
end
>> M
M =
1×10 struct array with fields:
position
As every random matrix has different rows, i want to gather all matrices in one matrix with the size of " rows*1 " at the end of each iteration.
It is still not clear. In each iteration only one matrix is created. What does "all matrices at the end of each iteration" mean then? What is "rows"? Do you want to append each new matrix to the existing one?
V = [];
for i = 1:10
V = cat(1, V, rand(5 + 10 * (i - 1), 1));
M(i).position = V ;
end
Exactly, i wanna append them. What i mean by " rows*1" is , i want to just have a final matrix with one column.
Okay, then I post this code as an answer.

Accedi per commentare.

Risposte (1)

V = [];
for i = 1:10
V = cat(1, V, rand(5 + 10 * (i - 1), 1));
M(i).position = V ;
end

Community Treasure Hunt

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

Start Hunting!

Translated by