MATLAB:批量导入一个非常大的文件
MATLAB: Import a very large file in batches
我正在尝试以 50 个为一批导入一个大型 csv 文件 (215000X3)。环顾四周后,有人建议我使用 'textscan'。我用下面的代码做到了
N = 50;
fid = fopen('PIDFile.csv');
formatSpec = '%s %s %s';
k=0;
while ~feof(fid)
k = k+1;
block = textscan(fid, formatSpec, N, 'Delimiter',',');
end
经过运行这部分代码,我得到'block'如下:
34X1 cell 34X1 cell 34X1 cell
正在导入的文件是一个普通的 csv 文件。我一直在研究 fread、fscan、csvread 等,但还没有遇到提供块导入的 examples/sloutions。任何 suggestions/comments 将不胜感激
谢谢,
H
哦,好吧,我所要做的就是:
block = cell2mat(textscan(fid, formatSpec, N, 'Delimiter',','));
问题就解决了!
我正在尝试以 50 个为一批导入一个大型 csv 文件 (215000X3)。环顾四周后,有人建议我使用 'textscan'。我用下面的代码做到了
N = 50;
fid = fopen('PIDFile.csv');
formatSpec = '%s %s %s';
k=0;
while ~feof(fid)
k = k+1;
block = textscan(fid, formatSpec, N, 'Delimiter',',');
end
经过运行这部分代码,我得到'block'如下:
34X1 cell 34X1 cell 34X1 cell
正在导入的文件是一个普通的 csv 文件。我一直在研究 fread、fscan、csvread 等,但还没有遇到提供块导入的 examples/sloutions。任何 suggestions/comments 将不胜感激
谢谢, H
哦,好吧,我所要做的就是:
block = cell2mat(textscan(fid, formatSpec, N, 'Delimiter',','));
问题就解决了!