I have 26 large .csv files that each take a while to load in to Matlab. I would like to be able to read them all in, using one for loop, so that I can leave the loop to run and work on something else while all of the files import. I would like each to be stored as a separate variable.
I have tried this, but the code fails on the last line where I try to read in the .csv using readmatrix() and store it with a name depending on the file that the loop is currently processing. In this example, I choose to start at the 17th .csv file in the folder as I have inspected the first 16 in a past life 🙂 The .csv files are 7GB otherwise I would attach an example.
directory=('Y:\SoundTrap\PSD Output');d=dir(fullfile(directory, '*.csv')); %list all .wav files in path folder
files=length(d); for i=17:files disp(d(i).name); %display filename
name=d(i).name; filename=fullfile(directory, d(i).name); file(i)=readmatrix(filename); end
There error I get is:
Unable to perform assignment because the indices on the left side are not compatible with the size of the right side.
Error in checkPSDoutput (line 14)
file(i)=readmatrix(filename);
Thanks for your help!
Best Answer