How to write matrix to txt or excel file with specific precision

13 visualizaciones (últimos 30 días)
I have a 100*100 matrix that I need to save it in a txt or excel file with high precision. This the code I use:
fid = fopen('data.txt', 'w+');
for j = 1:size(s, 2)
for i = 1:size(s, 1)
fprintf(fid, '%2.20f \n', s(i,j));
end
end
The problem in the output, it saves all the values in one line. Any ideas.

Respuesta aceptada

Stephen23
Stephen23 el 7 de Oct. de 2018
Editada: Stephen23 el 7 de Oct. de 2018
You don't need a loop. Try this:
M = your matrix
fmt = repmat(',%2.20f',1,size(M,2));
fmt = [fmt(2:end),'\n'];
[fid,msg] = fopen('data.csv', 'wt');
assert(fid>=3,msg)
fprintf(fid,fmt,M.')
fclose(fid);

Más respuestas (0)

Categorías

Más información sobre Environment and Settings en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by