How can I load variable mat file with similar name, modify them and save them again?
    2 views (last 30 days)
  
       Show older comments
    
    Mariana
 on 11 Dec 2019
  
    
    
    
    
    Answered: Walter Roberson
      
      
 on 11 Dec 2019
            for i=1:num    
    v = sprintf('Following_%d',i);
    l = heigth(v)
end
*I want to read the size of the table, load a column of that specific table, find values equal to 0 and save it again. The same process with multiple tables.
1 Comment
  Rik
      
      
 on 11 Dec 2019
				So you have some variables stored in a mat file and you want to find their sizes? Why don't you load into a struct (which you should do anyway) and loop over the fields?
And avoid numbered variables. They are a bad idea if you are going to generate variable names at runtime.
Accepted Answer
  Walter Roberson
      
      
 on 11 Dec 2019
        filename = 'AppropriateFileNameGoesHere.mat';
ds = load(filename);
for i=1:num    
    fn = sprintf('Following_%d',i);
    v = ds.(fn);
    l = height(v);
    c = v{:,appropriate_column_index};
    idx = find(c == 0);
    something something something
    ds.(fn) = changed v;
end
save(filename, '-struct', ds)
0 Comments
More Answers (0)
See Also
Categories
				Find more on Logical 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!

