- which OS, Windows7?
- which Matlab release?
- are other programs running?
- size of swap file?
- what function do you use to "load" the file?
Out of memory issue
2 次查看(过去 30 天)
显示 更早的评论
I am getting error,while Loading abc.csv file of 16567kb size,as Out of memory, I have Intel core2duo,3 ghz,3GB RAM,,please help me,, I want to convert .csv file to .mat file by loading it in workspace
回答(1 个)
C.J. Harris
2014-6-13
编辑:C.J. Harris
2014-6-13
For large CSV files you are less likely to run into memory issues if you read it line by line, for example:
nFile = 'file.csv';
[fid, message] = fopen(nFile,'r');
i=1;
numlines = str2double(perl('Countlines.pl', nFile));
while 1
tline = fgetl(fid);
if ~ischar(tline), break, end
comma = findstr(tline,',');
if i == 1
numComma = length(comma);
body_data = cell(numlines, numComma+1); % pre-allocate
end
body_data{i,1} = tline(1:comma(1)-1);
body_data{i,numComma+1} = tline(comma(end)+1:end);
for nData = 1:numComma-1
body_data{i,nData+1} = tline(comma(nData)+1:comma(nData+1)-1);
end
i = i + 1;
end
fclose(fid);
Where the perl script simply contains:
while(<>){};
print $.,"\n",
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Statistics and Machine Learning Toolbox 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!