writing a matrix into a file

9 次查看(过去 30 天)
Hello;
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?

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2013-3-29
编辑:Azzi Abdelmalek 2013-3-29
dlmwrite('file.txt',A)
  4 个评论
Azzi Abdelmalek
Azzi Abdelmalek 2013-3-29
编辑:Azzi Abdelmalek 2013-3-29
Use
dlmwrite('file.txt',A,'newline','pc')
Aman Kumar
Aman Kumar 2020-11-3
Just take transpose of your matrix and then write it to a file

请先登录,再进行评论。

更多回答(3 个)

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

请先登录,再进行评论。


Susan
Susan 2013-3-29
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
end
% Close text file and return to home directory
fclose(fid);
cd(homedir); % Return to home directory
  1 个评论
James Tursa
James Tursa 2017-10-19
@Eric: Please delete this comment and instead open up a new question with your code.

请先登录,再进行评论。


Eric Berger
Eric Berger 2017-10-19
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