rename workspace variables

5 visualizzazioni (ultimi 30 giorni)
Joris
Joris il 5 Ago 2011
Commentato: Albert Lu il 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?

Risposta accettata

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

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Workspace Variables and MAT Files in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by