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

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

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
如题,像'0.268843750000D+03'或者'-0.130385160446D-07'这样已经以科学计数法表示的字符串,我想把它转化成它所表示的双精度数字,在MATLAB里有处理这样问题的函数吗?) s: A: s2 g- @4 K

' ]( I1 U" s0 {" l! e 4 E" N7 W% x# \6 L% k  [" I
1 Y4 ~  A/ k7 p% c/ R
我试过str2double()函数,但这样得出来的结果总是显示NaN,所以想请教一下这类问题应该如何处理 ) ?  ~6 S0 X# z, ?, |; ?  m2 I1 u2 y

: f1 `/ `9 ]% D$ ~& w: T
  • x='0.250215843477D+00'
  • x =
  • 0.250215843477D+00
  • >> x=str2double(x)
  • x =
  •    NaN' ^9 O4 |, a( b, @* Q2 K

6 e  X# U2 {0 m- i+ I3 l: Q
  F* V* \1 @& ^* h+ s( b
6 ]0 K* ~" T* z# B8 U% r/ w0 l/ D2 j% _

该用户从未签到

3#
发表于 2020-7-30 19:36 | 只看该作者
你哪个D,matlab好像不认。2 G* d3 j: c! ?$ y2 U" s
你吧D换成e
' r* E1 l1 ~$ A& o3 f>> num = strfind(x,'D');0 j* M7 I, U; X7 @* o0 @
>> x(num) = 'e'
& H+ ^1 M+ A9 a0 h0 K8 ?2 F
, ^' S0 C8 \! s. v! G4 kx =
* |) c) q. z1 i- C$ m  w/ S6 I7 L' E
0.250215843477e+00
# R7 A- C6 \1 U! |
  _) _; `1 R* Q% }3 W9 L; V>> str2double(x) %精度自己设置
7 `+ H5 N3 Z9 ~3 N, y! N) f
! ?3 F8 o/ t( p/ `1 _# M- Nans =
7 V$ D" S8 h3 R* u, t! |/ Y% F* V. F- ?! M( ]
    0.2502
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-11-24 18:48 , Processed in 0.156250 second(s), 26 queries , Gzip On.

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

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

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