How to convert a .mat file into a .csv file?

93 visualizaciones (últimos 30 días)
Srika
Srika el 6 de Abr. de 2016
Comentada: Ola Fekry el 19 de Feb. de 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);
>> >> >>

Respuesta aceptada

Walter Roberson
Walter Roberson el 6 de Abr. de 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 comentario
Ola Fekry
Ola Fekry el 19 de Feb. de 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?

Iniciar sesión para comentar.

Más respuestas (2)

Azzi Abdelmalek
Azzi Abdelmalek el 6 de Abr. de 2016
FileData = load('Trainset.mat');
v=reshape([FileData.M],size(FileData))
csvwrite('FileName.csv', v)

MBD4FUN
MBD4FUN el 6 de Abr. de 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

Categorías

Más información sobre Convert Image Type en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by