MATLAB: Saving the .mat file using for loop

for loop

Hi everyone,
I have the following section of code. I want to generate 10 different files using the for loop and each time i want to save each generated random_sample to be saved as a separate data file. So by the end of the for loop i should have 10 different files in total with different names. What is the missing part in the save-command line. Thank you.
lambda = 2;
for i = 1:10
random_sample = poissrnd(lambda,1,100)>0.25;
save('datafile','random_sample');
end

Best Answer

You use the same file name for all ten samples. So Matlab overrides the file in every iteration and you end up with one saved sample only. What you have to do is make the file name dependent on the iteration. You could do that as follows:
save(sprintf('datafile_%02d',i), 'random_sample');
That should do it.