sql >> Base de Datos >  >> RDS >> Mysql

Trabajar con un gran archivo CSV en MATLAB

Probablemente debería usar textscan para leer los datos en fragmentos y luego procesarlos. Esto probablemente será más eficiente que leer una sola línea a la vez. Por ejemplo, si tiene 3 columnas de datos, podría hacer:

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

EDITAR

Actualmente (R2014b y posterior), es más fácil y probablemente más eficiente usar un datastore .