Load and edit multiple poorly named .m files

1 vue (au cours des 30 derniers jours)
Marino
Marino le 6 Jan 2021
Modifié(e) : Stephen23 le 6 Jan 2021
Hello,
I don't really know how to write this question properly. I've spent the past few hours googling and I did not find a good solution. Most answers are "don't do this" - but let me explain.
I've got (not made by me!) a folder with maany subfolders and in each subfolder there are 4 different .m files - each file is a single (quite large, around 500x500) matrix.
All of the files follow some naming logic, but they are terrible to use in MATLAB.
See picture:
In the end I need to load each .m file, cut the size, and combine into a single matrix. I know how to cut the size and combine, but I don't know how to automate the import.
So what I want:
...to add this file as an input to the classification learner, which only accepts one single matrix?
The matrix needs to be in a specific order, which is sadly not alphabetic - but the order the folders were created in - Date.
I loaded all .m files up in the workspace and created a struct, but the order of the entries is wrong.
I would be happy if I just get this done, with whatever "not reccomended" or unrobust or ugly way.
I'm fine with:
  • the idea of using placeholders in a for-loop for the multiple variables - is this possible?
  • importing all files and renaming them 1:1:length(x) and then edit them in a loop - how?
How would you go about this problem?
  5 commentaires
Marino
Marino le 6 Jan 2021
Sorry my bad, .mat files.
Stephen23
Stephen23 le 6 Jan 2021
Modifié(e) : Stephen23 le 6 Jan 2021
"How would you go about this problem?"
I don't see why you need to rename any files or use "placeholders in a for-loop for the multiple variables" (whatever that means). Why not do the obvious:
  • Get the folder creation date (search this forum to know how).
  • Sort the folders into that order
  • process each folder (dir, load into output variables, etc.)
'Most answers are "don't do this"'
I have never seen an answer that says "do not process multiple folders/files in a loop". This is a very common task.
PS: none of your screenshots have any .m files in them, I can only see .mat files.

Connectez-vous pour commenter.

Réponses (1)

Cris LaPierre
Cris LaPierre le 6 Jan 2021
See this answer for a way to rename all files in a folder and all its subfolders.

Community Treasure Hunt

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

Start Hunting!

Translated by