Filter löschen
Filter löschen

How to add Filename to all variables automatically?

2 Ansichten (letzte 30 Tage)
Mert Dogan
Mert Dogan am 8 Okt. 2017
Kommentiert: Mert Dogan am 8 Okt. 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.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 8 Okt. 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 Kommentare
Walter Roberson
Walter Roberson am 8 Okt. 2017
save(outfilename, '-struct', 'outstruct');
Mert Dogan
Mert Dogan am 8 Okt. 2017
Thanks a lot. Walter can i ask a question ? How can i create file in a path automatically ?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Predict Remaining Useful Life (RUL) finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by