Matlab数据类型

Matlab中提供了多种数据类型,以供用户在不同的情况下使用。用户可以创建浮点型或者整数型矩阵和数组、字符和字符串、逻辑(true或者false)表达式、函数句柄、结构(structure)数组、元胞(cell)数组、Map容器、日期和时间、分类(categorical)数组、表格、时间序列等。在MATLAB中任何一种数据类型都以矩阵或者数组的形式来表示。这里说的矩阵或者数组,是指最小的0x0或N维任何大小的矩阵或者数组;
3.1 数值型
包括有符号和无符号整数、单精度和双精度浮点数。默认情况下是双精度浮点数;用户不可以更改默认的数据类型和精度,但可以选择用非默认的整数或者单精度浮点数来存储矩阵或者数组;整数数组和单精度数组比双精度数组能节省更多的内存空间,灵活运用可以更高效地利用内存。
所有数值型数组都支持基本的数组操作;比如数组的重构、使用数学运算符等。
数值型数组或矩阵比较简单。
3.2 逻辑型
创建逻辑型矩阵或者数组的函数主要有以下三个:
logical函数:可以将任意类型的数组转化为逻辑型。其中非零元素为true,零元素为false.
true 函数:产生全部元素为逻辑true的数组;
false函数:产生全部元素为逻辑false的数组;
例:利用函数创建逻辑型数组;
rand(‘state’,0)

a=rand(4,3) %生成测试矩阵

a =

0.9501    0.8913    0.8214
0.2311    0.7621    0.4447
0.6068    0.4565    0.6154
0.4860    0.0185    0.7919

a(a<0.6)=0; %生成测试矩阵
a =

0.9501    0.8913    0.8214
     0    0.7621         0
0.6068         0    0.6154
     0         0    0.7919

b=logical(a) %计算逻辑型矩阵b

b =

 1     1     1
 0     1     0
 1     0     1
 0     0     1

c=true(size(a)) %生成全为true的矩阵

c =

 1     1     1
 1     1     1
 1     1     1
 1     1     1

d=false([size(a),2]) %生成全为false的矩阵

d(:,:,1) =

 0     0     0
 0     0     0
 0     0     0
 0     0     0

d(:,:,2) =

 0     0     0
 0     0     0
 0     0     0
 0     0     0

whos %查看现有的变量与数据类型
Name Size Bytes Class Attributes

A 3x5 120 double
a 4x3 96 double
ans 1x2 16 double
b 4x3 12 logical
c 4x3 12 logical
d 4x3x2 24 logical
逻辑型数组中每一个元素仅占用一字节的内存空间。所以,尽管矩阵b和矩阵a的大小一样,但是在内存的占用上有相当大的差距,并且属于不同的数据类型;
3.2.2 返回逻辑结果的函数
下面的逻辑运算符或函数将会返回逻辑型的true或者false.
&& 具有短路作用的逻辑“与”操作,仅能处理标量;
|| 具有短路作用的逻辑“或”操作,仅能处理标量;
& 元素“与”操作
| 元素“或”操作
~ 逻辑“非”操作
xor 逻辑“异或”操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值