Save data from a for loop with different dimensions?

2 views (last 30 days)
Hello I'm trying to store the data of the next loop by vectorizing each iteration:
lambda = 2;
distri= poissrnd(lambda,1,5);
xi= distri
for x = xi
r(x)= randi([1,4],1,x)
end
But I get this error: Subscripted assignment dimension mismatch.
I think is because the different results of the loop are of different sizes so they can´t be put in a single vector, so there is another way to save my data?

Accepted Answer

Ameer Hamza
Ameer Hamza on 17 Jun 2018
Edited: Ameer Hamza on 17 Jun 2018
Each iteration has a different number of elements so you will need a cell array. Also, you will need to change the indexing of for loop
lambda = 2;
distri= poissrnd(lambda,1,5);
xi= distri;
for x = 1:numel(xi)
r{x}= randi([1,4],1,xi(x));
end

More Answers (0)

Categories

Find more on Loops and Conditional Statements 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!