Creating a table then filling it with data.
Afficher commentaires plus anciens
So I'm fairly sure I'm missing something obvious, but how do I create a blank table, that I can then fill with data. What I have is a program that pulls data from a file, performs some functions, then returns the new data. I need this to be done on many files. What I want is a table with the filename of the data pulled, and the end result of the functions performed on said data.
folder = ('C:/Users/The G-Man/Documents/MATLAB/SpeechRecognition/SpeechRecognition2');
files = dir(fullfile(folder, '*.txt'));
mydata = cell(1, numel(files));
for fileidx = 1 : numel(files) mydata{fileidx} = importdata(fullfile(folder, files(fileidx).name)); y=fft(mydata{fileidx}); c=xcorr(xf,y); m=mean(abs(c));
end
Réponses (1)
Jeff Miller
le 6 Avr 2018
0 votes
How about this:
- preallocate arrays to hold y, c, and m before you start the loop
- store the values into those arrays as you go through the loop, e.g. c(fileidx)=xcorr(xf,y);
- stuff everything into a table after the loop finishes, e.g., t=table(files,y,c,m)
Catégories
En savoir plus sur Numeric Types 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!