我正在使用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
时我必须删除第一行“一些文字“ 在里面。
现在我必须编辑所有文件,加载它们,提取第一列并将它们合并到一个矩阵中。
所以我的问题是:是否有任何命令或命令例程可以导入此文件结构而无需编辑它?我只想要第一列的数据(这不是浪费时间编辑一个文件)
感谢您的任何建议。
答案 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
中第一列的数据。