Вам, вероятно, следует использовать textcan для считывания данных в виде кусков и последующей обработки.Это, вероятно, будет более эффективным, чем чтение одной строки за раз.Например, если у вас есть 3 столбца данных, вы можете сделать:
filename = 'fname.csv';
[fh, errMsg] = fopen( filename, 'rt' );
if fh == -1, error( 'couldn''t open file: %s: %s', filename, errMsg ); end
N = 100; % read 100 rows at a time
while ~feof( fh )
c = textscan( fh, '%f %f %f', N, 'Delimiter', ',' );
doStuff(c);
end
РЕДАКТИРОВАТЬ
В наши дни (R2014b и более поздние версии) проще и, вероятно, эффективнее использовать datastore
.