How to save multiple .mat files as one .mat file?
24 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
David Mascarenhas
le 1 Juil 2021
Commenté : David Mascarenhas
le 31 Juil 2021
Hello,
I have a matlab script that processes some data for each hour of the day and saves each result as > " result_ddmmyy_hh.mat " file.
This gives me a file of all the resultant data processed for that hour.
I use this script on a loop to study the data for the whole day and then the same for the whole week.
Now I have too many files (24 X 7). I would like to store all the results of each day as one complete file, that way i will have only 7 meta-data files.
Is there a way to do this directly without re-running the entire script? Can I directly merge multiple .mat files into one .mat file?
Thank you in advance!
David :)
0 commentaires
Réponse acceptée
Jeff Miller
le 2 Juil 2021
You can load all 24 .mat files for a single day and then save all of the collected variables together as one .mat file. For example:
Collected = cell(24,1);
for Hour=1:24
fname = ['FileForHour' num2str(Hour) '.mat'];
Collected{Hour} = load(fname);
end
save('CollectedForThisDay','Collected')
Details might change a bit depending on how the hourly variables are named and how you want them named in the collected file.
3 commentaires
Jeff Miller
le 2 Juil 2021
No, the method will save the variables for all hours---not just the last one.
For example, Collected{1}.Var1 will be the value of Var1 for the first hour, Collected{2}.Var1 wil be the value of Var1 for the second hour...Collected{24}.Var1, and so on for all variables.
In the saved file, you can think of each Collected{k} as a folder with its own collection of variables.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Entering Commands 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!