找回密码
 注册
关于网站域名变更的通知
查看: 450|回复: 2
打印 上一主题 下一主题

这是关于一个数据类型转换的问题:请问科学计数法表示的字符串怎样转化成双精度数据?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-7-30 13:46 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
如题,像'0.268843750000D+03'或者'-0.130385160446D-07'这样已经以科学计数法表示的字符串,我想把它转化成它所表示的双精度数字,在MATLAB里有处理这样问题的函数吗?
/ \& u' G! Y0 f4 s
% I) K& w- q0 F8 }& O% V1 I 3 Q2 {, z' V0 c1 B+ ~

( m0 |" ?9 R  V( P( `! F我试过str2double()函数,但这样得出来的结果总是显示NaN,所以想请教一下这类问题应该如何处理
, Z+ q0 k6 f8 F: n
6 A, l) z& D0 V/ G! |4 E9 g
  • x='0.250215843477D+00'
  • x =
  • 0.250215843477D+00
  • >> x=str2double(x)
  • x =
  •    NaN
    $ a# t* y1 u' k& p) ]/ X/ ^

! ^5 U1 `' Z6 D; {, i
3 _; `7 J9 O+ B# U7 z* _( j9 u, \) `4 X. C% U1 L) t: A

% S* [  V+ a) X- T! I

该用户从未签到

3#
发表于 2020-7-30 19:36 | 只看该作者
你哪个D,matlab好像不认。
6 f) W8 y2 `  H你吧D换成e
4 d4 f) G# L: c9 U>> num = strfind(x,'D');
, o% L1 G. p% S4 q( R$ W- v>> x(num) = 'e'- ~. P4 Y1 m9 z/ t% U
6 E6 u, d5 ?; s0 U6 d
x =$ k* r4 n/ e: B  ~
8 X$ X. n, U& X: k+ C- H
0.250215843477e+00
& Z2 s) V2 E/ _8 a0 N# W0 H! E" Q# L& S: w% `1 t
>> str2double(x) %精度自己设置
5 U4 n: X: `' M6 S) z4 q7 Z2 G  g; y
ans =
" h' C) S: ]! p% M7 f0 B9 ?, V3 R; h" l' }
    0.2502
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-27 07:52 , Processed in 0.140625 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表