Ask an expert. Trust the answer.

Your academic and career questions answered by verified experts

Matlab file name with zero-padded numbers

Date: 2022-11-08 11:53:45

I have 11x11 matrices and I saved them as .mat files from F01_01 to F11_11. I have to run a function Func on each file. Since it takes a long time, I want to write a script to run the function automatically: 

 

for i=01:11  
    for j=01:11  
        filename=['F',num2str(i), '_', num2str(j),'.mat'];  
        load(filename);  
        Func(Fi_j);   % run the function for each file  Fi_j  
    end  
end   

But it doesn't work, Matlab cannot find the mat-files.
Could somebody please help ? 

Answers: 

The problem 

 

i=01; 
j=01; 
['F',num2str(i), '_', num2str(j),'.mat'] 

evaluates to 

F1_1.mat 

and not to

F01_01.mat 

as expected.

The reason for this is that i=01 is a double type assignment and i equals to 1 - there are no leading zeros for these types of variables. 

A solution

a possible solution for the problem would be 

 

for ii = 1:11
    for jj= 1:11
        filename = sprintf('F_%02d_%02d.mat', ii, jj );
        load(filename);  
        Func(Fi_j);   % run the function for each file  Fi_j  
     end  
end 

 


Why Matlabhelpers ?

Our Matlab assignment helpers for online MATLAB assignment help service take utmost care of your assignments by keeping the codes simple yet of high-quality. We offer the most reliable MATLAB solutions to students pursuing their Computer Science course from the Monash University, the University of Sydney, the University of New South Wales, the University of Melbourne; to name a few. Approach us today for best Matlab solutions online!

whatsApp order on matlabhelpers.com

telegram order on matlabsolutions.com