Matlab中的元胞数组

    元胞数组(Cell Array)将类型不同的相关数据集成到一个单一的变量中,使得大量相关数据的引用和处理变得简单方便。也就是说cell元胞数组,存储不同类型的数据

1.元胞数组的创建

    创建方法有3种:直接赋值法、利用函数cell()、利用{ }直接创建元胞数组的所有单元。

1.1直接赋值法

    通过赋值语句把值赋到元胞数组的一个单元中,但每一次赋值只能创建一个单元内容。
    两种赋值方法:内容索引法(content indexing)和单元索引法(cell indexing)。

  • 内容索引法
    赋值语句的左边用大括号{ }将标识单元的下标括起来,右边为单元的内容。
    在这里插入图片描述
    在这里插入图片描述
  • 单元索引法
    赋值语句的左边用小括号()将标识单元的下标括起来,右边用大括号将存储于单元中的数据括起来。
    在这里插入图片描述

1.2 利用cell()函数

函数cell()可以创建一个元胞数组,并能规定其大小(预分配内存)。
如预定义一个元胞数组,需要利用赋值法对元胞的每个单元进行初始化赋值。
cell_array = cell(m,n);

1.3 利用{}直接创建元胞数组的所有单元

    这是一种快捷的元胞数组创建方法,利用{ }可以直接快速地创建所需元胞数组。在大括号中一次列出所需创建元胞数组的内容,它们之间用逗号(,)隔开,行与行之间用分号(;)隔开,这样就可以创建一个已经初始化好的元胞数组。
在这里插入图片描述

2.元胞数组的寻访

    一个元胞数组的每一个单元都是一个指针,指向其他的数据结构,而这些数据结构可以是不同的数据类型。在MATLAB中,元胞数组创建时,没有显示内容单元的内容,显示的只是它相应的数据类型。而MATLAB可以通过单元的名称来寻访其单元包含的内容。
在MATLAB中,元胞数组的寻访有以下三种形式。
(1)用( )将下标括起来寻访cell单元的结构类型。
(2)用{ }将下标括起来寻访cell单元的内容。
(3)用celldisp( )函数对元胞数组的所有内容进行寻访。
在这里插入图片描述
在这里插入图片描述
    因此通过()访问cell数组时访问到的是cell单元,通过{}访问cell数组时访问到的是cell单元储存的内容。

3.cell单元的删除

通过[ ]实现矩阵和矩阵元素的删除。

元胞数组删除操作区别就在于{}和()
a={1,2,3};
a{1}=[]; %并不能删除第一个cell单元,只是变成空值
a(1)=[]; %删除第一个单元

a(:)=[]; %一次性删除所有cell单元
在这里插入图片描述
在这里插入图片描述

4.相关函数

· celldisp:显示元胞数组中所有的内容
· cell:创建空的元胞数组
· cellplot:利用图形方式显示内容
· cell2mat:将数组转变成为普通的矩阵
· mat2cell:将数值矩阵转变成为cell数组
· num2cell:将数值数组转变成为cell数组
· cell2struct:将数组转变成为结构
· struct2cell:将结构转变为cell数组
· iscell:判断输入是否为cell数组

参考:
https://blog.csdn.net/u011125673/article/details/97398874

  • 4
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值