rename workspace variables

5 Ansichten (letzte 30 Tage)
Joris
Joris am 5 Aug. 2011
Kommentiert: Albert Lu am 24 Apr. 2017
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?

Akzeptierte Antwort

Daniel Shub
Daniel Shub am 5 Aug. 2011
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 Kommentar
Albert Lu
Albert Lu am 24 Apr. 2017
Just to point out a small typo here. The last line should be save('newmymat.mat', '-struct', 'x');

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Workspace Variables and MAT Files finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by