如何读取octave / matlab中的乘法分隔数据

时间:2014-09-03 17:08:56

标签: matlab time octave

我有一个包含许多这样的行的文件:

15:48:50.450    0.4 0.974   1.143   -0.008  2.5 60.5    18.9

第一个元素是时间戳,其余的只是实数。

顶部还有一个标题行。

在Octave:

dlmread(file1,'\t :',1,0);

(读取除顶行以外的所有内容,将制表符,空格和冒号视为分隔符)

将拉出15,48,50.450,0.4,......

从中可以很容易地重建时代。

不幸的是,MATLAB不会接受多个分隔符,无论如何它都是一个黑客攻击。还有更好的方法吗?

2 个答案:

答案 0 :(得分:1)

您可以使用dlmread仅使用分隔符'\ t'来读取文件,然后使用例如分解时间戳字段来分解时间戳字段。 datevec

答案 1 :(得分:0)

您可以使用textscan matlab )设置多个分隔符并读取文件

a = '15:48:50.450    0.4'
b = textscan(a,'%f%f%f%f','Delimiter',':\t')

给出了

a = 15:48:50.450    0.4

b = [15]    [48]    [50.4500]    [0.4000]