write data to a .txt file
Mostra commenti meno recenti
i have
matrix A=[1 2 3 4 5], matrix B=[6 7 8 9 10]
i want to create a text file with both matrices values separated by ';'
output data must be in this form in text file
1;6;
2;7;
3;8;
4;9;
5;10;
please let me know how can i do it
Risposte (2)
Thorsten
il 20 Feb 2013
fprintf(fid, '%d;%d;\n', [A' B'])
8 Commenti
shanmukh
il 20 Feb 2013
José-Luis
il 20 Feb 2013
fprintf(fid, '%d;%d;\n', [A B]')
Please read the documentation to understand how a function works. The documentation can be really bad sometimes (accumarray comes to mind), but for fprintf() it is rather decent.
Thorsten
il 20 Feb 2013
This works if q and d are row vectors of equal size
fprintf(f,'%d;%i64;\n',[q' d']);
José-Luis
il 20 Feb 2013
I guess you could make it foolproof:
fprintf(fid, '%d;%d;\n', [reshape(A,[],1) reshape(B,[],1)]')
shanmukh
il 20 Feb 2013
shanmukh
il 20 Feb 2013
José-Luis
il 20 Feb 2013
Then you can't do it like that. What do you want the output to be when there is only one value.
shanmukh
il 20 Feb 2013
José-Luis
il 20 Feb 2013
Filling with NaN, when there are no values:
A = rand(10,1);
B = rand(15,1);
nRows = max([numel(A) numel(B)]);
your_mat = nan(nRows,2));
your_mat(1:numel(A),1) = A;
your_mat(1:numel(B),2) = B;
%...
fprintf(fid, '%d;%d;\n', your_mat')
Categorie
Scopri di più su Standard File Formats in Centro assistenza e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!