babybear
2012-04-05, 15:03
在matlab中的有一64*61的矩阵,我想按顺序将它存到一个.text格式的文件中,我使用的命令语句是dlmwrite('singal.txt', signal, 'delimiter', '\t','precision', 16)
可是生成的text中不是64*61的,请各位帮下忙~麻烦啦
你的指令应该没有问题呀,是不是16位精度太高了。
下面是MALTAB HELP中dlmwrite指令的Example,你的方法就是第一个example:
Examples
Example 1
Export matrix M to a file delimited by the tab character and using a precision of six significant digits:
dlmwrite('myfile.txt', M, 'delimiter', '\t', ...
'precision', 6)
type myfile.txt
0.893898 0.284409 0.582792 0.432907
0.199138 0.469224 0.423496 0.22595
0.298723 0.0647811 0.515512 0.579807
0.661443 0.988335 0.333951 0.760365
Example 2
Export matrix M to a file using a precision of six decimal places and the conventional line terminator for the PC platform:
dlmwrite('myfile.txt', m, 'precision', '%.6f', ...
'newline', 'pc')
type myfile.txt
16.000000,2.000000,3.000000,13.000000
5.000000,11.000000,10.000000,8.000000
9.000000,7.000000,6.000000,12.000000
4.000000,14.000000,15.000000,1.000000
Example 3
Export matrix M to a file, and then append an additional matrix to the file that is offset one row below the first:
M = magic(3);
dlmwrite('myfile.txt', [M*5 M/5], ' ')
dlmwrite('myfile.txt', rand(3), '-append', ...
'roffset', 1, 'delimiter', ' ')
type myfile.txt
40 5 30 1.6 0.2 1.2
15 25 35 0.6 1 1.4
20 45 10 0.8 1.8 0.4
0.81472 0.91338 0.2785
0.90579 0.63236 0.54688
0.12699 0.09754 0.95751
When dlmread imports these two matrices from the file, it pads the smaller matrix with zeros:
dlmread('myfile.txt')
40.0000 5.0000 30.0000 1.6000 0.2000 1.2000
15.0000 25.0000 35.0000 0.6000 1.0000 1.4000
20.0000 45.0000 10.0000 0.8000 1.8000 0.4000
0.8147 0.9134 0.2785 0 0 0
0.9058 0.6324 0.5469 0 0 0
0.1270 0.0975 0.9575 0 0 0
vBulletin® v3.8.3,版权所有 ©2000-2025,Jelsoft Enterprises Ltd.