How to apply fprinf for matrix
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I would like to use fprintf for Writing data to a text file. I want to apply fprintf on the following matrix. I have a matrix with n rows and 3 columns. please help with this issue. thanks a lot. for instance.
0.0000 0.0000 0.0000
0.0000 0.1000 0.0000
0.0643 0.0675 0.0000
0.1000 0.0000 0.0000
0.0000 0.2000 0.0000
0.2000 0.0000 0.0000
0.0725 0.1500 0.0000
0.1488 0.0873 0.0000
0.0726 0.2501 0.0000
0.0000 0.3000 0.0000
0.0000 0.4000 0.0000
0.3000 0.0000 0.0000
0.4000 0.0000 0.0000
1 commentaire
Réponse acceptée
Stephen23
le 27 Mai 2016
Modifié(e) : Stephen23
le 27 Mai 2016
This is MATLAB, so there really is no point in using an ugly loop when you can do it much faster and simpler with just one csvwrite call:
csvwrite('test.csv',M)
M = [...
0.0000,0.0000,0.0000;...
0.0000,0.1000,0.0000;...
0.0643,0.0675,0.0000;...
0.1000,0.0000,0.0000;...
0.0000,0.2000,0.0000;...
0.2000,0.0000,0.0000;...
0.0725,0.1500,0.0000;...
0.1488,0.0873,0.0000;...
0.0726,0.2501,0.0000;...
0.0000,0.3000,0.0000;...
0.0000,0.4000,0.0000;...
0.3000,0.0000,0.0000;...
0.4000,0.0000,0.0000];
%
fid = fopen('test.csv','wt');
fprintf(fid,'%f,%f,%f\n',M.')
fclose(fid);
Plus de réponses (3)
Stalin Samuel
le 27 Mai 2016
%example code
s = rand(10,3);
fileID = fopen('a.txt','w');
for i=1:length(s)
fprintf(fileID,'%g\t%g\t%g \r\n',s(i,:));
end
fclose(fileID);
TastyPastry
le 27 Mai 2016
fh = fopen('newFile.txt','w');
for i=1:size(myData,1)
fprintf(fh,'%d %d %d\n',a(i,1),a(i,2),a(i,3))
end
Guillaume
le 27 Mai 2016
dlmwrite('test.csv', M, 'delimiter', ' ');
or if you want to specify the precision
dlmwrite('test.csv', M, 'delimiter', ' ', 'precision', '%6.4f');
Voir également
Catégories
En savoir plus sur Characters and Strings dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!