How can I load variable mat file with similar name, modify them and save them again?

3 views (last 30 days)
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
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.

Sign in to comment.

Accepted Answer

Walter Roberson
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)

More Answers (0)

Categories

Find more on Tables in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!