Numerate lines to a text file
Show older comments
i write this matrix to a .txt file and i would like to numerate the lines, for example :
1 5 1 6
2 1 2 8
3 1 3 15
....
50 2 1 10
51 2 2 20
52 2 3 13
....
Please will someone help me?
Answers (3)
Here is an example for your problem:
A = rand(100, 3);
num = 1:100;
B = [num' A];
disp(B)
dlmwrite('filename.txt', B, '\t');
In case you don't know the size of matrix you want to numerate then you can do like this:
[m, n] = size(YourMatrix);
num = 1:m;
I hope it helps
Vivek Selvam
on 14 Oct 2013
Edited: Vivek Selvam
on 14 Oct 2013
Hi George
A more rudimentary C like approach is as follows:
[rows cols] = size(A);
formatSpecRowNum = '%3.2d ';
formatSpec = '%5.4f ';
formatSpecNewline = '\n';
fileID = fopen('myFile.txt','w+');
for i = 1:rows
fprintf(fileID,formatSpecRowNum,i);
for j = 1:cols
fprintf(fileID,formatSpec,A(i,j));
end
fprintf(fileID,formatSpecNewline);
end
fclose(fileID);
Azzi Abdelmalek
on 14 Oct 2013
If A is your nx3 array
c1=1:size(A,1)
A=[c1; A']
fid=fopen('filename.txt','w')
fprintf(fid, '%d %d %d %d \r\n',A);
fclose(fid)
Categories
Find more on Large Files and Big Data in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!