Filter löschen
Filter löschen

Using fprintf to store large square matrices

3 Ansichten (letzte 30 Tage)
Joppy
Joppy am 1 Jan. 2018
Kommentiert: KSSV am 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!

Akzeptierte Antwort

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by