How to add Filename to all variables automatically?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Mert Dogan
le 8 Oct 2017
Commenté : Mert Dogan
le 8 Oct 2017
Hi, everyone I have 127 variable in a .mat file. I want to add filename to all variables and save them a path like "File\Filename_VariableX" automatically. Thanks a lot.
0 commentaires
Réponse acceptée
Walter Roberson
le 8 Oct 2017
Assuming you want to process a whole directory like this:
projectdir = 'File'; %location to save into
if ~exist(projectdir, 'dir'); mkdir(projectdir); end
dinfo = dir('*.mat');
for fidx = 1 : length(dinfo)
filename = dinfo(fidx).name;
[~, basename] = fileparts(filename);
datastruct = load(filename);
fn = fieldnames(datastruct);
for nidx = 1 : length(fn)
varname = fn{nidx};
outvarname = [basename '_' varname];
outfilename = fullfile(projectdir, [outvarname '.mat']);
outstruct = struct( outvarname, datastruct.(varname) );
save(outfilename, '-struct', outstruct);
end
end
This preserves variable names inside the .mat files.
3 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Predict Remaining Useful Life (RUL) dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!