Matlab自学笔记八:多维数组、高维数组的概念、索引方法、常用函数、维度简化

1.概念

Matlab中具有多于两个维度的数字阵列被称为多维数组;

多维数组是普通二维矩阵的扩展;

下面以三维数组说明(四维以上的数组同理);

如图,为3*3*2的三维数组(维度名称分别为行、列、页面)

三维数组

程序示例:

>> a=[1 2 3;4 5 6;7 8 9]

>> b=[11 12 13;14 15 16;17 18 19]

>> c=a

>>c(:,:,2)=b  %c是一个三维数组,第一个页面元素是a,第二个页面元素是b

2.显示方式

高维数组有多个维度,在Matlab命令行窗口显示数据只能是二维数字阵列,因此,高维数组的显示方式是,分离成若干个二维阵列,一个一个的显示;

程序示例:

>> c %上面定义的变量c,回车运行,显示如下:

c(:,:,1)=

     1 2 3

     4 5 6

     7 8 9

c(:,:,2)=

     11 12 13

     14 15 16

     17 18 19

3.索引方式

多维数组的索引方式与矩阵索引方式一致,只是索引数量变多了,矩阵索引请参考文章:Matlab自学笔记六:矩阵索引的概念、下标索引、线性索引、逻辑索引

程序示例:

>> c %上面定义的变量c

>> c(1,[1 2],2)  %下标索引,返回[11 12](此处不明白可留言交流)

>> c(2,3)  %返回6

4.大小和维度

多维数组的数组特征(大小、维度等)与矩阵的用法一致,矩阵的特征属性请参考文章:Matlab自学笔记五:创建矩阵、矩阵大小、维度、数目、空矩阵、标量、向量、数字序列

程序示例:

>> c %上面定义的变量c

>> ndims(c)  %维度:3维

>> size(c)  %大小:3 3 2

5.创建高维数组的常用函数

创建多维数组的常用函数与创建矩阵的常用函数用法一致,同样参考自学笔记五;

程序示例:

>> zeros(2,2,2)  %创建2*2*2三维全0数组

>> repmat(10,[2 2 2 3])  %平铺复制:2*2*2*3的四维全10数组

6.维度简化

把不必要的维度压缩简化,从而把高维数组变成低维数组,方便编程和运算;

程序示例:

>> x=ones(2,2,1,1,1,2,1)  %七维全1数组:第1、2、6维度大小为2

>> squeeze(x)  %维度简化:返回2*2*2的三维全1数组

上一篇:

Matlab自学笔记七:矩阵元素的合并、连接、提取、翻转、排序、平铺复制、提取对角线元素

End

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

freexyn

码字不易,谢谢鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值