How to convert a .mat file into a .csv file?
63 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Srika
am 6 Apr. 2016
Kommentiert: Ola Fekry
am 19 Feb. 2022
I have a .mat file loaded in workspace. I want to convert it into .csv file.
FileData = load('Trainset.mat');
csvwrite('FileName.csv', FileData.M);
I used the above method to convert but i get this error. >> csv_Con Reference to non-existent field 'M'.
Error in csv_Con (line 2) csvwrite('FileName.csv', FileData.M);
>> >> >>
1 Kommentar
Akzeptierte Antwort
Walter Roberson
am 6 Apr. 2016
FileData = load('Trainset.mat');
fields = fieldnames(FileData);
for K = 1 : length(fields)
thisvar = fields{K};
thisdata = FileData.(thisvar);
if ~isnumeric(thisdata)
warning('Skipping field %s which is type %s instead of numeric', thisvar, class(thisvar));
else
thisfile = sprintf('FileName_%s.csv', thisvar);
csvwrite(thisfile, thisdata);
end
end
1 Kommentar
Ola Fekry
am 19 Feb. 2022
Plz I have a RF signal dataset of 220000 .mat file how can I put them in CSV file to be used in classification learner app for evaluation?
Weitere Antworten (2)
Azzi Abdelmalek
am 6 Apr. 2016
FileData = load('Trainset.mat');
v=reshape([FileData.M],size(FileData))
csvwrite('FileName.csv', v)
0 Kommentare
MBD4FUN
am 6 Apr. 2016
Don't know if this is what you are looking for but here is one way of solving this problem.
FileData = load('Trainset.mat');
% get all varaible names
varNameList = fields(FileData);
% create a csv file to dump all data
fid = fopen('Trainset.csv','wt')
% write header if you prefer
fprintf(fid,'ColumnA,ColumnB');
for i = 1:length(varNameList)
switch lower(FileData.(varNameList{1}).class)
case 'char'
% write data to CSV file
fprintf(fid,'%s,%s\n');
case 'double'
% do whatever you want with the double
% ...and write data to CSV file
fprintf(fid,'%s,%s\n');
% ...
end
end
% close CSV file
fclose(fid);
BTW, you might want to consider wrap up this block of code in a function ;-)
Happy scripting,
MBD4FUN
0 Kommentare
Siehe auch
Kategorien
Mehr zu Convert Image Type finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!