How to load data without reloading?
10 次查看(过去 30 天)
显示 更早的评论
I would like to load variables from a .mat file, but just those ones which are not loaded before. It is possible not overwrite the variables?
回答(1 个)
Chad Greene
2015-10-27
As I understand it, you have some variables in your workspace, let's call them x and y. You want to load some test.mat file that has variables x and y in them. You can do
x = 1;
y = 2;
t = load('test.mat');
x2 = t.x;
y2 = t.y;
3 个评论
Chad Greene
2015-10-27
You can try
m = matfile('test.mat');
w = who(m);
to the get names of the variables in test.mat.
Chad Greene
2015-10-27
Or, putting it all together, if test.mat contains a variable named x, load it:
if any(strcmpi(who(matfile('test.mat')),'x'))
x = load('test.mat','x');
end
Similarly, you could compare the variables in test.mat to the variables in your workspace using ismember with who.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Workspace Variables and MAT Files 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!