Effacer les filtres
Effacer les filtres

Using fprintf to store large square matrices

3 vues (au cours des 30 derniers jours)
Joppy
Joppy le 1 Jan 2018
Commenté : KSSV le 1 Jan 2018
So I've had trouble finding any information about this. Basically I need to store an M x M matrix to a file. I usually use the following to store data:
fname = fopen('data.dat', 'w');
fprintf(fname, '%d\n', mydata);
fclose(fname);
Which works for column/row vectors. But from the documentation I can only gather that to store a matrix I would need to have '%d %d ... %d\n' M times in the FORMAT specifier, which seems ridiculous?
I can make do by 'unpacking' the 1 x M^2 vector that the above code produces (when 'mydata' is an M x M matrix) but it seems unnecessary.
Thanks!

Réponse acceptée

KSSV
KSSV le 1 Jan 2018
A = rand(3) ;
fprintf([repmat('%f\t', 1, size(A, 2)) '\n'], A');
  2 commentaires
Joppy
Joppy le 1 Jan 2018
Thanks KSSV!
KSSV
KSSV le 1 Jan 2018
You are welcome...:)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical 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!

Translated by