Adding multiple variable contents in a single variable
3 views (last 30 days)
I hope I can explain my problem statement properly.
I have matrix with name from meanSINR1, meanSINR2, meanSINR3, .... meanSINR10. Each matrix is of size 722x2 double values.
I want to put all these matrix values in a single matrix using a for loop.
I tried using sprintf() to move through each matrix name. But I could get the correct result.
tmp1 = zeros(1,2);
tmp2 = ;
for ii = 1:121
tmp1 = sprintf('meanSINR%d',ii);
tmp2 = [tmp2; tmp1];
Looking forward to any kind of suggestion. Thank you.
Kindly let me know if anyone can help me in running through multiple file names in python too using a for loop.
the cyclist on 19 Sep 2022
If your data are already stored in dynamically named variables, then I think your only recourse is to use eval to do this task:
% Make up some data smaller than your actual data
meanSINR1 = rand(7,2);
meanSINR2 = rand(7,2);
meanSINR3 = rand(7,2);
meanSINR = ;
for ii = 1:3
eval(sprintf('meanSINR = [meanSINR; meanSINR%d];',ii))
But be aware that dynamically named variables are a terrible programming practice.
It would be much better if you could go further upstream in your code, and use cell arrays or multi-dimensional arrays to store these data. For example, the above could instead have been
meanSINR = rand(7,2,3);
from the beginning, with all the data stored in a single array.