Numerate lines to a text file

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?

Réponses (3)

sixwwwwww
sixwwwwww le 14 Oct 2013
Modifié(e) : sixwwwwww le 14 Oct 2013

0 votes

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
Vivek Selvam le 14 Oct 2013
Modifié(e) : Vivek Selvam le 14 Oct 2013

0 votes

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
Azzi Abdelmalek le 14 Oct 2013

0 votes

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)

Catégories

En savoir plus sur Large Files and Big Data dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by