rename workspace variables

5 次查看(过去 30 天)
I have two .mat's that each have a list of vectors with the same name. I want to rename the variables of the first .mat to originalname_Ref, and then save all vectors in one .mat. But how do I change the names of the workspace vectors?

采纳的回答

Daniel Shub
Daniel Shub 2011-8-5
When you load the .mat file, load it to a variable:
x = load('mymat.mat');
names = fieldnames(x)
for iname = 1:length(names)
x.(['new_', names{iname}]) = x.(names{iname});
x = rmfield(x, names{iname});
end
save('newmymat.mat', '-struct', 's');
  1 个评论
Albert Lu
Albert Lu 2017-4-24
Just to point out a small typo here. The last line should be save('newmymat.mat', '-struct', 'x');

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile 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!

Translated by