Clear Filters
Clear Filters

Convert all csv in a folder to .mat

19 views (last 30 days)
Elise Barbeau
Elise Barbeau on 3 Feb 2021
Commented: Jan on 5 Feb 2021
I have several csv files in one folder and I want to convert them all to .mat format?
Is it possible to do that at once?

Accepted Answer

Jan
Jan on 3 Feb 2021
Edited: Jan on 4 Feb 2021
Folder = 'D:\YourFolder';
FileList = dir(fullfile(Folder, '*.csv'));
for iFile = 1:numel(FileList)
% [TYPO FIXED]: [name, ext] ==> [~, name, ext]
[~, name, ext] = fileparts(FileList(iFile).name);
data = readtable(fullfile(Folder, [name, ext]));
save(fullfile(Folder, [name, '.mat']), 'data');
end
  10 Comments
Elise Barbeau
Elise Barbeau on 5 Feb 2021
yes I saw that too but to do it on all the files in my folder at once?
Jan
Jan on 5 Feb 2021
This suggestion does it during the creation already. Then you do not have to do it again. But the code looks similar to the one of my answer:
Folder = 'D:\YourFolder';
FileList = dir(fullfile(Folder, '*.mat'));
for iFile = 1:numel(FileList)
FileData = load(fullfile(Folder, FileList(iFile).name));
data = FileData.data;
data(1, :) = [];
save(fullfile(Folder, [name, '.mat']), 'data');
end

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!