writing a matrix into a file

111 views (last 30 days)
Tina on 29 Mar 2013
Commented: Aman Kumar on 3 Nov 2020
I have a matrix A, let's say it is a 100x1 matrix. I want to put the data into a text file, such that each line corresponds to the row of my matrix. How can I do it?

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 29 Mar 2013
Edited: Azzi Abdelmalek on 29 Mar 2013
Aman Kumar
Aman Kumar on 3 Nov 2020
Just take transpose of your matrix and then write it to a file

Sign in to comment.

More Answers (3)

the cyclist
the cyclist on 29 Mar 2013
Edited: the cyclist on 29 Mar 2013
There are many possible ways. One is to use the frprintf() function. See
doc fprintf
for syntax and examples.
  1 Comment
Tina on 29 Mar 2013
I know, but I could not figure out how I can have the file such that each line has only one number in it.

Sign in to comment.

Susan on 29 Mar 2013
Here's a basic script that you should be able to modify and get to work using fprintf. Look at the help document for other things you can specify, like field width.
homedir = cd; % Save current directory as home directory
nrows = size(A,1);
flnm = 'Matrix A'; % Specify string for filename
cd(newdir); % Change directory to new directory, if desired. Must specify string for new directory.
fid = fopen(flnm,'wt+'); % Create writable textfile
% Enter data into text file
for i = 1:nrows
fprintf(fid,'%f\r\n',A(i,:)); % The %f is for floating point numbers, or you could use %d for double-precision integers
% Close text file and return to home directory
cd(homedir); % Return to home directory
  1 Comment
James Tursa
James Tursa on 19 Oct 2017
@Eric: Please delete this comment and instead open up a new question with your code.

Sign in to comment.

Eric Berger
Eric Berger on 19 Oct 2017
I'm going to try to debug on my own, I can delete this if you want

Community Treasure Hunt

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

Start Hunting!

Translated by