将.txt文件读入MATLAB矩阵
我有一个.out文件(.txt),格式如下:将.txt文件读入MATLAB矩阵,matlab,Matlab,我有一个.out文件(.txt),格式如下: This is a text file This file was created by Andrew on 4/5/14 Certificate Result Test #12 Time A B C D 50 4 3 8 9 55 4 8 7 4 60 8 4 1 4 65 7
This is a text file
This file was created by Andrew on 4/5/14
Certificate Result Test #12
Time A B C D
50 4 3 8 9
55 4 8 7 4
60 8 4 1 4
65 7 1 5 1
70 4 2 2 2
如何将表中的数字读入MATLAB中名为M的矩阵,同时在开始时忽略所有文本
我曾尝试使用fscan和M=dlmread(filename),但我收到错误消息,称由于开头的文本行,文件和格式字符串不匹配
提前感谢使用
文本扫描
和标题行
选项:
fid = fopen('my_file.out'); % or whatever your file is called
M = textscan(fid,'%d %d %d %d %d','HeaderLines',7); % using int32 data types, change as required
fclose(fid)
请注意,
M
是一个单元阵列textcan是一个功能强大的工具,具有良好的低级功能。还有一种更方便的“importdata”,适用于许多此类文件:
m = importdata('my.txt', ' ', 6)
m =
data: [5x5 double]
textdata: {6x5 cell}
colheaders: {'Time' 'A' 'B' 'C' 'D'}
正如您所看到的,它不仅返回m.data中的数据,而且还免费获取列标题。欢迎使用SO,感谢您提供问题示例。如果您确实尝试了不同的方法,如
fscan
或dlmread
,请将它们包含在您的帖子中。解决方案可能是对代码进行简单的修复,而不必从头开始编写。作为指针,您还可以查看命令和标题行
参数。