Different arrays to one text file
12 views (last 30 days)
Show older comments
header1= 'Name file';
header2='Median frequencies of MVCs';
outputFile1 = fopen(fullfile(mydir1,'Results.txt'),'w');
I have two different types of arrays: one is the filename which is a character array and the other one is a number array. I want the filename to be in the left column of the text file and the median frequency in the right column with the corresponding filename. How should I go on from here? Everything I have tried gave me the error that I was using wrong matrices.. Please help
2 Comments
KL
on 2 Nov 2017
My answer should work for numeric arrays as well and for structures you could use struct2cell or even struct2table and then writetable but it all comes down to how you've stacked up your data.
Answers (1)
KL
on 1 Nov 2017
Edited: KL
on 1 Nov 2017
store them in a cell array and use fprintf,
yourCell = {'a', 'b', 'c'; 1, 2, 3};
fprintf('%s %d\n',yourCell{:});
2 Comments
KL
on 2 Nov 2017
see, here's a complete working example,
yourCell = {'a', 'b', 'c'; 1, 2, 3};
head = {'filename', 'values'};
fid = fopen('sample.txt','w');
fprintf(fid,'%s %s\n',head{:});
fprintf(fid,'%s %d\n',yourCell{:});
fclose(fid)
This does exactly what you ask for. You can check it by importing the data again into the workspace,
importCheck = readtable('sample.txt')
See Also
Categories
Find more on Data Type Conversion 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!