writing cell array to file

1 vue (au cours des 30 derniers jours)
Amjad Luna
Amjad Luna le 28 Fév 2020
Hi,
I have a large text file with entries/lines that look like as follows.
-60,-69,""
-63,-77,""
-64,-79,""
-69,-85,""
-75,-91,""
-75,-91,""
-79,-77,""
I need to extract the first N (say three) lines and write them to another text file. I am doing the following.
fp_in=fopen(input_file_name, 'r');
inDump=textscan(fp_in, '%s%s%s', 'Delimiter', ',');
outDump={inDump{1}(1:3) inDump{2}(1:3) inDump{3}(1:3)};
T=cell2table(outDump);
writetable(T,output_file_name);
The output file comes out with the columns of the input file transposed. This is what I see in the output file.
-60,-63,-64,-69,-77,-79,"","",""
Thanks for any tips.
  2 commentaires
Walter Roberson
Walter Roberson le 28 Fév 2020
outDump={inDump{1}(1:3); inDump{2}(1:3); inDump{3}(1:3)};
Amjad Luna
Amjad Luna le 28 Fév 2020
Tried already. Gives me
-60,-63,-64
-69,-77,-79
"","","","",""

Connectez-vous pour commenter.

Réponse acceptée

Sravya Pulavarthi
Sravya Pulavarthi le 12 Fév 2021
Hi Amjad, you can use readtable and writetable to do this:
>> r = readtable(input_file_name);
>> N = 3; % Since you want to extract the first 3 lines of your file
>> writetable(r(1:N,:), output_file_name, "QuoteStrings", true, "WriteVariableNames", false);

Plus de réponses (0)

Catégories

En savoir plus sur Environment and Settings dans Help Center et File Exchange

Produits


Version

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by