Loading multiple (e.g. ~ 3000) mat files into workspace and merging them in a table
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Swapnil Sayan Saha
am 5 Jun. 2019
Bearbeitet: Stephen23
am 5 Jun. 2019
I have many mat files (no particular sequence such as file1.mat, file2.mat etc etc) in a folder. I want to load all of them into a workspace and then merge all the mat files in a table.
Any efficient way to do so other than loading all of them manually (which can be done if I select all the files using CTRL+A then press enter, no issues of RAM as I have 16 gigs and the files will take at best 3 gigs of RAM) and then using the table(names of variables,..........)? My main issue is i will need to list all 3000 variables from workspace to table function manually which I don't want to do.
0 Kommentare
Akzeptierte Antwort
Stephen23
am 5 Jun. 2019
Bearbeitet: Stephen23
am 5 Jun. 2019
" i will need to list all 3000 variables from workspace.."
That is a good example of why load-ing directly into the workspace is a bad way to write code.
Preallocate a table (exactly how depends on how you want to join the tables).
Loop over the files. Load each file into a structure, i.e.:
S = load(...)
T = struct2table(S);
Use one of the table join functions to add the new table to the preallocated table:
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu Data Type Conversion 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!