从文件导入数据的命令

时间:2011-05-04 14:21:25

标签: matlab matlab-load

我正在使用MATLAB来组织红外摄像机测量数据,我希望比现在更有效率。

IR相机的SW导出按列

组织的数据
Some text
488.875 1300110589.875  2   14.3.2011 14:49:49.875  0   1
488.875 1300110590.156  2   14.3.2011 14:49:50.156  0   2
488.875 1300110590.671  2   14.3.2011 14:49:50.671  0   3
488.875 1300110590.953  2   14.3.2011 14:49:50.953  0   4
488.875 1300110591.234  2   14.3.2011 14:49:51.234  0   5

我可以手动加载它,我也可以使用load -ascii foo.bar但是第一种方式很长,因为点击无聊,第二种方式是烦恼因为当使用load -ascii时我必须删除第一行“一些文字“ 在里面。 现在我必须编辑所有文件,加载它们,提取第一列并将它们合并到一个矩阵中。

所以我的问题是:是否有任何命令或命令例程可以导入此文件结构而无需编辑它?我只想要第一列的数据(这不是浪费时间编辑一个文件)

感谢您的任何建议。

1 个答案:

答案 0 :(得分:4)

功能TEXTSCAN是要走的路。例如:

fid = fopen('foo.bar','r');
data = textscan(fid,'%f %*f %*d %*s %*s %*d %*d','HeaderLines',1);
fclose(fid);
data = data{1};  %# Remove cell array encapsulation

这将跳过文件中的一个标题行并忽略第2列到第7列中的数据,仅返回N-by-1数组data中第一列的数据。