Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab,textscan:精确的行拾取_Matlab_Textscan - Fatal编程技术网

Matlab,textscan:精确的行拾取

Matlab,textscan:精确的行拾取,matlab,textscan,Matlab,Textscan,不幸的是,Matlab和文本扫描问题。 就我而言,我可以使用以下方式导入我感兴趣的数据: f = fopen(file,'r'); % Open text file data=textscan(f, '%f %f %f %f %f %f %f %f', 'Delimiter',',', 'HeaderLines',14); fclose(f); 但是 在标题的第12行和第13行中,我有一些有趣的数据,结构如下: Calibration Coefficient,0.002501,0.001,0

不幸的是,Matlab和文本扫描问题。 就我而言,我可以使用以下方式导入我感兴趣的数据:

f = fopen(file,'r');  % Open text file
data=textscan(f, '%f %f %f %f %f %f %f %f', 'Delimiter',',', 'HeaderLines',14);
fclose(f);
但是

在标题的第12行和第13行中,我有一些有趣的数据,结构如下:

Calibration Coefficient,0.002501,0.001,0.1294,35.5,200,66.666,1
Offset,0.9,0,0,0,0.7,0,0
所以它们是第一列中的字符串,然后是7个双精度字符串,应该用这种方式编码

param1=textscan(f, '%*s %f %f %f %f %f %f %f','Delimiter',',','HeaderLines',11);
param2=textscan(f, '%*s %f %f %f %f %f %f %f','Delimiter',',','HeaderLines',12);
实际上,我想知道为什么param单元格是空的,如果可以只导入文件第12行和第13行中的数据


提前谢谢。

看起来你一切都很好。这里有一个小的变化,应该修复你所需要的希望

param1=textscan(f, '%s %f %f %f %f %f %f %f',1,'Delimiter',',','HeaderLines',11);
param2=textscan(f, '%s %f %f %f %f %f %f %f',1,'Delimiter',',','HeaderLines',12);
请注意在分隔符之前插入了“1”。我很确定这意味着在停止之前只需读取一组“%s%f%f%f%f%f%f”。这样,您只需阅读12行和13行,并将它们分别保存到param1和param2。我也没有得到任何空单元格


希望这有帮助

textscan函数有一个“count”参数,您应该在第一行中使用它:打开文件,用正确的格式读取第12行,指定count=1和header line=11,然后用count=1读取第13行,如果两行的格式相同,则无headerline,您可以用count=2一次性读取它们。然后读取文件的其余部分未指定的“计数”将一直读取到文件结束,然后关闭文件。谢谢,帮助不清楚此计数。但是,输出单元格为空。不知道为什么。谢谢这是非常有用的,也为进一步与文本扫描工作。但是,输出单元格param1,2为空。谁知道为什么。担心我的细胞有问题。嗯。。。如何访问param1的值?如果在cmd窗口中使用像param1{2}这样的花括号,结果仍然是空的吗?我发现param文件是空的,因为我的标题线打错了。该文件为3打开了一次,但headerline用于每个命令打开一次的文件。我检查了这些东西,改变了头线,我能够选择正确的行,所以再次感谢。