从文件导入数据的命令

发布于 2024-11-05 01:32:54 字数 658 浏览 4 评论 0原文

我正在使用 MATLAB 组织红外摄像机测量数据,我希望比现在更高效地工作。

红外摄像头的软件导出按列组织的数据

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 我必须删除其中包含“某些文本”的第一行。 现在我必须编辑所有文件,加载它们,提取第一列并将它们合并到一个矩阵中。

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

感谢您的任何建议。

I'm using MATLAB to organize IR camera measurement data and I'd like to work more efficient than now.

The SW for IR camera exports data organised in columns

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

I can load it manually, I can also use load -ascii foo.bar but first way is long because of neverending clicking, second one is annoyg because when using load -ascii I have to remove first line with "some text" in it.
Right now I have to edit all the files, load them, extract first column and merge them into a matrix.

So my question is: Is there any command, or command routine, that can import this file structure without any need to edit it? I just want data from first column (It's not such a waste of time editing one file)

Thanks for any suggestions.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

从此见与不见 2024-11-12 01:32:54

函数 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×1 数组 data 中第一列的数据。

The function TEXTSCAN is the way to go. For example:

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

This will skip one header line in the file and ignore the data in columns 2 through 7, returning only the data from the first column in the N-by-1 array data.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文