Matlab基础刻意练习

3.16 单元数组

单元数组时一种MATLAB数组,它的每一元素时单元,在单元里可以保存各种类型的MATLAB数组。例如单元数组、实数矩阵、文本字符串数组、结构数组以及其他复数向量等。

3.16.1 单元数组的创建

可以通过对单元数组的赋值来创建单元数组,也可以对单元数组的预分配来创建。对于单元数组预分配的书写格式为:

  1. C=cell(n) 表示建立n阶单元空方阵
  2. C=cell(m,n) 表示建立m行n列的单元空矩阵
  3. C=cell(size(A)) 表示建立与矩阵A’同维的空单元矩阵

单元数组的赋值

(1)下标索引
与数组表示方法相类似,用圆括号内的下标数来显示单元号。在等式右端用花括号把单元的内容括起来。
例:对一个2行2列的单元数组进行赋值。
》A=cell(2,2);
》A(1,1)={magic(3)}; %在(1,1)单元里为3阶魔方矩阵
》A(1,2)={‘10/1/2004’}; %在(1,2)单元里为日期
》A(2,1)={1:5}; %在(2,1)单元里,是1:5的行向量
》A(2,2)={[1+2i 2-3i;2+3i 1-2i]}; %在(2,2)单元里,是复数矩阵

在这里插入图片描述
在这里插入图片描述

(2)单元索引。将单元数组的单元号用花括号括起来,在等式右侧写入单元的内容。同上例,
在这里插入图片描述
在这里插入图片描述

对于单元数组中,单元中的单元数组称为嵌套的单元数组或称为单元数组的子集。对于子集的赋值可以通过两次索引(两次索引仍用花括号)的等式右侧赋值。例如:
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

注:cellplot(C) 表示用图形显示单元数组C的结构图,其中矩阵代表向量元素或矩阵元素,标量或短的文本字符串

3.16.2 单元数组的删除和改写

与一般数组相似,可以用赋值空矩阵来删除单元数组的某单元。亦可以用reshape来改写矩阵。
例:已知单元数组A={magic(3),‘10/1/2004’,‘name_wang’;[1 3 5 7],eye(3),’$5000’},要求删除单元{1,1},{2,1}和{2,2}。
在这里插入图片描述
在这里插入图片描述

例:已知单元数组A=cell(4,6),要求改写成为3行8列的单元数组B,再取B矩阵的第4~8列组成单元数组C。
在这里插入图片描述

在这里插入图片描述

注:reshape使用时,应使转变后的元素与转变前的元素保持一致,不可多也不可少。

3.16.3 单元数组的运算

单元数组中的数值矩阵仍符合数值矩阵的运算规,对于字符数组则仍符合字符数组的运算规则。
例:已知单元数组A{1,1}=rand(2,3),A{2,1}=[1 3 5 7],A{1,2}=rand(3,2),A{2,2}=1:4,求单元元素的乘积A{1,1}*A{1,2}并存入A{1,3},以及单元元素的卷积conv(A{2,1},A{2,2})并存入A{2,3}.
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值