TA的每日心情 | 衰 2019-11-19 15:32 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
0 R) }2 G) M3 W. Y
matlab工作空间有以下数据(全是数值数据,没有字符,应该是mat格式的)
) ]' o. p) L2 c+ Ddata3 =
- c6 J" X0 @+ q. q; a7 O 100 200 400 550 700 I0 Z/ y# X+ a2 x8 A
46 99 110 160 1207 V1 U8 f9 b; `! v& D3 y0 J: @6 P
300 319 455 666 777
% b. ]( u Y" O. {, ^$ ~; y* d" J想将其以txt格式输出,试了几个输出函数,都存在问题。
3 z0 ]* P2 u7 j1.save save test3.txt data3 -ascii %不加-ascii则txt文件是:MATLAB 5.0 MAT-file, Platform: PCWIN, Created on:........加乱码
9 @0 Y9 T6 G. P7 `8 ]% s4 w5 Qtxt文件中结果如下; v0 s6 n; K4 C6 h
1.0000000e+002 2.0000000e+002 4.0000000e+002 5.5000000e+002 7.0000000e+0021 I& b# e% |# P3 n( _6 [' o
4.6000000e+001 9.9000000e+001 1.1000000e+002 1.6000000e+002 1.2000000e+002
& [/ u* B ?; l5 q; l 3.0000000e+002 3.1900000e+002 4.5500000e+002 6.6600000e+002 7.7700000e+002
! O8 a0 [, A4 j3 n8 V& f科学计数法啊,看着太费劲了
! r8 v% T$ n$ `0 ^2.dlmwrite('test3.txt',data3,'precision','%10.0f')
, ~, m# g* W. L: U, i; g; o结果如下:
/ S/ [; u1 e/ c6 j' J8 l1 a& W" e' I5 J 100, 200, 400, 550, 700 46, 99, 110, 160, 120 300, 319, 455,
( v T, u. c$ i& \1 v! V666, 777
6 g3 k/ Z# Y: a/ y `+ ` i! R0 K! a各列之间以逗号分隔,行之间以空分隔,显示的也不是分行显示了,看着就同样费劲+别扭。
" N7 u0 K+ G3 V/ v3.dlmwrite('test3.txt',data3,'delimiter', '\t')
9 D2 _1 Y& W, n" S! r2 Z5 ?7 T结果如下
@) V/ S `% ?0 a+ {$ N% T9 S: X100 200 400 550 70046 99 110 160 120300 319 455 666 777% F/ g u. E! @% V
下一行第一个数据接到了前一行最后一个数据后,虽然,用复制再粘贴到excel中,发现实际上行数是对的,但是为什么显示成这样呢
( @ P' J5 {- N附件是第三种情况的test3.txt文件
) d8 u$ ?6 t- N1 l, B0 M3 G" m
5 Q9 u" V, w8 {各位大侠帮忙看看怎么解决
# r& g ]9 b# x) j- M' J e7 B/ x1)如果用save指令,如何不保存科学计数法?
: Y, K# g3 p6 z* B3 V2)如果用dlmwrite指令,如何显示成分行的形式?
2 D" Q- A% `& W( x或者其它指令的也可以。谢谢了!8 z& m3 _. m9 a# M' v, B8 x
在网上找了一些诸如“使用文本文件(.txt)进行数据存取的技巧总结(相当的经典)”等发现不是那么回事。另外,在我的另一个求助中,txt文件的数据中有字符数据,读取和保存,问题就更多一些了。同样希望有大侠能帮忙。' L! Q/ B1 _; }3 i* s# |# G& s: z
|
|