MATLAB Answers

How to rename several several .mat in a file with rename

59 views (last 30 days)
Hello,
I Have a question about the same subject.
I have several files: FoodS01HealthSession1.mat FoodS01PracticeSession1.mat FoodS01TasteSession1.mat FoodS01TestSession1.mat
That go from S01 to S021 and I would like to all rename them as following FoodSub110HealthSession1.mat FoodSub110PracticeSession1.mat FoodSub110TasteSession1.mat FoodSub110TestSession1.mat
from 110 to 130
I cannot manage doing it using the function rename, as I donnnot know how to correctly code the loop nor using the function.
Could anyone help me?
Thanks a lot

  0 Comments

Sign in to comment.

Accepted Answer

Titus Edelhofer
Titus Edelhofer on 13 Sep 2018
Edited: Titus Edelhofer on 13 Sep 2018
Hi Solene,
this should work
names = {'Health', 'Practice', 'Taste', 'Test'};
for iName = 1:numel(names)
for iFile=1:21
origName = sprintf('FoodS0%d%sSession1.mat', iFile, names{iName});
newName = sprintf('Food%d%sSession1.mat', iFile+109, names{iName});
movefile(origName, newName);
end
end
untested but should be more or less it. Edit: make the %d without leading zero and added the leading zero for all files.
Hope this helps,
Titus

  3 Comments

Stephen Cobeldick
Stephen Cobeldick on 13 Sep 2018
Solene Frileux's "Answer" moved here:
Hello Titus,
Thanks for your answer. I looked and it exists but all my filenames are entitled 010, 011, 012...etc until 021.
Stephen Cobeldick
Stephen Cobeldick on 14 Sep 2018
Solene Frileux's "Answer" moved here:
Thank you so much Titus, it works perfectly well. I wish you a very pleasant day, as mine just got really brighter thanks to you!

Sign in to comment.

More Answers (1)

Solene Frileux
Solene Frileux on 13 Sep 2018
Hello Titus,
Thanks a lot for your help. It works really well until subject O10: then MATLAB indicates
Error using movefile mv: rename /Users/admin/Desktop/PLACEBODIET/Resultats_task_eau_EEG_session_1_renamed/FoodS10HealthSession1.mat to /Users/admin/Desktop/PLACEBODIET/Resultats_task_eau_EEG_session_1_renamed/Food119HealthSession1.mat: No such file or directory
Error in Help_titus(line 11) movefile(origName, newName );
Do you have any idea why it bugs at this point?
best,
Solène

  2 Comments

Titus Edelhofer
Titus Edelhofer on 13 Sep 2018
Dear Solène,
did you have a look, if the file /Users/admin/Desktop/PLACEBODIET/Resultats_task_eau_EEG_session_1_renamed/FoodS10HealthSession1.mat really exists?
Titus
Titus Edelhofer
Titus Edelhofer on 13 Sep 2018
I see it now: I thought it's 01, 02, ..., 09, 10, 11, but it is 01, 02, ..., 010, 011. I'll edit the answer.

Sign in to comment.

Sign in to answer this question.

Tags