加载包含八度矩阵的文件

时间:2013-03-28 00:09:22

标签: octave

我有一个C ++程序执行迭代改进程序。我在每一步都记录错误,我想将这些数据导入八度音阶进行绘图。我的程序将结果作为矩阵写入名为“err.m”的文件:

B = [
0 0.0566002;
1 0.0510102;
2 0.0510102;
3 0.0454972;
4 0.0418604;
5 0.0415802;
6 0.036775;
7 0.0298324;
8 0.0298324;
9 0.0298324;
]

(实际文件当然要大得多。) 我一打开八度音并进入

load 'err.m'

我收到错误

error: load: err.m: inconsistent number of columns near line 2
error: load: unable to extract matrix size from file `err.m'

然而,当我直接将文件的内容粘贴到八度音程中时,一切正常(除非矩阵有很多行)。我用Google搜索了错误,但我找不到解决问题的方法,尽管这个问题似乎很常见。

有谁知道如何加载文件?

1 个答案:

答案 0 :(得分:0)

err.m:

0 0.0566002
1 0.0510102
2 0.0510102
3 0.0454972
4 0.0418604
5 0.0415802
6 0.036775
7 0.0298324
8 0.0298324
9 0.0298324

err1.m:

B = [
0 0.0566002;
1 0.0510102;
2 0.0510102;
3 0.0454972;
4 0.0418604;
5 0.0415802;
6 0.036775;
7 0.0298324;
8 0.0298324;
9 0.0298324;
];

在Octave:

octave:1> load 'err.m'
octave:2> err
err =

   0.00000   0.05660
   1.00000   0.05101
   2.00000   0.05101
   3.00000   0.04550
   4.00000   0.04186
   5.00000   0.04158
   6.00000   0.03678
   7.00000   0.02983
   8.00000   0.02983
   9.00000   0.02983

octave:3> err1
B =

   0.00000   0.05660
   1.00000   0.05101
   2.00000   0.05101
   3.00000   0.04550
   4.00000   0.04186
   5.00000   0.04158
   6.00000   0.03678
   7.00000   0.02983
   8.00000   0.02983
   9.00000   0.02983

octave:4> run 'err1.m'
B =

   0.00000   0.05660
   1.00000   0.05101
   2.00000   0.05101
   3.00000   0.04550
   4.00000   0.04186
   5.00000   0.04158
   6.00000   0.03678
   7.00000   0.02983
   8.00000   0.02983
   9.00000   0.02983

octave:5> B=load('err.m')
B =

   0.00000   0.05660
   1.00000   0.05101
   2.00000   0.05101
   3.00000   0.04550
   4.00000   0.04186
   5.00000   0.04158
   6.00000   0.03678
   7.00000   0.02983
   8.00000   0.02983
   9.00000   0.02983