Matlab中gensig函数的使用

本文介绍了MATLAB中str2double函数的用法,包括如何将字符向量和字符串数组转换为数值,展示了实数、指数记数法、千位分隔符和复数的转换实例。从R2016b开始,特别提到了处理字符串数组的技巧。
摘要由CSDN通过智能技术生成

目录

语法

说明

示例

将字符向量转换为数值

将字符串数组转换为数值数组


        str2double函数是将字符串转换为双精度值。

语法

X = str2double(str)

        str表示数值的文本,它可以指定位字符向量、字符向量元胞数组或字符串数组。

说明

         X = str2double(str)将str中的文本转换为双精度值。str包含表示实数或复数值的文本。str可以是字符向量、字符向量元胞数组或字符串数组。如果str是字符向量或字符串标量,则X是数值标量。如果str 是字符向量元胞数组或字符串数组,则X是与str具有相同大小的数值数组。

        表示数值的文本可以包含数字、逗号(千位分隔符)、小数点、前导 + 或 - 符号、以 10 为缩放因子的幂前面的e以及复数单位的i或j。不能使用句点作为千位分隔符或使用逗号作为小数点。如果str2double不能将文本转换为数值,则它将返回NaN 值。

示例

将字符向量转换为数值

        将表示数值的字符向量转换为双精度值。还可以将字符向量元胞数组转换为相同大小的数值数组。如下所示的转换及代码:

(1)将字符向量转换为实数。

X = str2double('3.1416')
X = 3.1416

(2)转换使用指数记数法表示数值的字符向量

X = str2double('2.998e8')
X = 299800000

(3)转换使用逗号作为千位分隔符的字符向量

X = str2double('1,200.34')
X = 1.2003e+03

(4)将字符向量转换为复数

X = str2double('3.14 + 2.7i')
X = 3.1400 + 2.7000i

(5)将字符向量元胞数组转换为数值

str = {'2.718','3.1416';
       '137','0.015'};
X = str2double(str)
X = 2×2

    2.7180    3.1416
  137.0000    0.0150

将字符串数组转换为数值数组

        从 R2016b 开始,可以使用string函数创建字符串数组。可以使用str2double函数将字符串转换为数值。

(1)创建表示数值的字符串。将其转换为数值标量

str = string('81470.5')
str = 
"81470.5"
X = str2double(str)
X = 8.1471e+04

(2)创建表示数值的字符串数组。将其转换为大小相同的数值数组

str = string({'91.57','95.95','3.57';
              '79.22','65.57','84.91'})
str = 2x3 string
    "91.57"    "95.95"    "3.57" 
    "79.22"    "65.57"    "84.91"

X = str2double(str)
X = 2×3

   91.5700   95.9500    3.5700
   79.2200   65.5700   84.9100

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值