我可以使用importdata只返回文本文件的一部分吗?

时间:2015-02-10 14:49:14

标签: matlab import text-files

我正在使用:

 importdata(fileName,'',headerLength)

从文本文件中获取数据,该文件是回车换行符分隔的。我遇到的问题是文件相对较大,有几千个,这使得数据加载速度变慢。我只想要文件的一小部分,所以我想知道我是否可以使用 importdata 来实现这个目标?

这样的事情:

 importdata(fileName,'',headerLength:dataEnd);

这不起作用,我无法在 importdata 文档中找到任何支持。

有谁知道更合适的功能?

1 个答案:

答案 0 :(得分:0)

如果您知道要加载的每个文件中的行(行号),

您可以使用更慢,更传统的数据阅读方式。 readline.m允许您这样做:

http://uk.mathworks.com/matlabcentral/fileexchange/20026-readline-m-v3-0--jun--2009-

这允许您从数据块中读取您想要的任何行,但它比正常的csvread / textscan慢得多,但如果您知道要查找的行,则可以更快地考虑它们。