MATLAB处理超大文件

需要借助MATLAB强大的矩阵和内置pca函数,苦恼在于直接load会出现out of memory 错误,没办法只好一行一行读入,然后每隔一段时间存储一次。由于期间发现了其他很方便的解决方法,代码没写完。

fid=fopen('/nlfs6/chencg/matlab/devFeature.txt');
mat=zeros(10,45016703);
for i=1:10

    a{i}=fgetl(fid);
    s=regexp(a{i},' ','split');
    for j=1:45016703
   	mat(i,j)=str2double(s(j));	
	fprintf('%d %d\n',i,j);
    end
end
save('/nlfs6/chencg/matlab/lala.mat','mat');
fclose(fid);

clear; clear all;
fid=fopen('1.txt');
mat=zeros(3,6);
for i=1:12
    a{i}=fgetl(fid);
    s=regexp(a{i},' ','split');
    for j=1:6
        mat(i,j)=str2double(s(j));
    end
    
    if mod(i,3)==0
        savename=strcat(num2str(i),'line.mat');
        save(savename,'mat');
    end
end
fclose(fid);


 
  

你可能感兴趣的:(matlab,matlab)