Formatting more than 600 table
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I have more than 600 tables each one has a different data. I want To put all the data in the same table (one table). I wonder how can I do that in Matlab. Any help would be greatly appreciated. I will be grateful to you.
4 Kommentare
Guillaume
am 9 Jan. 2015
Your naming does not appear to be very consistent. I would have expected the first table to be named either table1 or table001. How is the 10th table named? table010 or table10?
You've not answered whether or not the tables all have the same columns
Akzeptierte Antwort
Guillaume
am 9 Jan. 2015
Bearbeitet: Guillaume
am 9 Jan. 2015
A simple code (which does not preserve completely the table header):
tabledir = 'C:\wherever\the\files\are\on your\drive';
tablecount = 600; %how however many there are
tableout = 'alltables.txt' %or however you want to name it
tables = cell(tablecount, 1);
%read tables one by one into cell array
for tableidx = 1:tablecount
tablefile = sprintf('table%02d.txt', tableidx);
if ~exist(fullfile(tabledir, tablefile), 'file')
warning('skipping table %s. file does not exist', tablefile);
else
tables{tableidx} = readtable(fullfile(tabledir, tablefile)); %read table
end
end
alltables = vertcat(tables{:}); %concatenate all tables
writetable(alltables, fullfile(tabledir, tableout));
Note, that I've not tested nor debugged it, there may be some small typos, syntax errors.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Environment and Settings finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!