Load and edit multiple poorly named .m files

2 views (last 30 days)
Marino
Marino on 6 Jan 2021
Edited: Stephen23 on 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 Comments
Stephen23
Stephen23 on 6 Jan 2021
Edited: Stephen23 on 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.

Sign in to comment.

Answers (1)

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

Categories

Find more on File Operations in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!