matlab的元胞和结构体
2015-09-23 13:12
1196 查看
一、元胞数组是MATLAB 的一种特殊数据类型,可以将元胞数组看作一种无所不包的通用矩阵,或者叫作广义矩阵。组成元胞数组的元素可以是任何一种数据类型的常数或者常量,每一个元素也可以具有不同的尺寸和内存占用空间,每一个元素的内容也可以完全不同,所以元胞数组的元素叫作元胞(cell)。
1)创建方法:
元胞数组的创建使用“{ }”。创建数组a的时候,使用花括号将不同类型和尺寸的数据组合在一起构成了一个元胞数组,在这个数组中有标量、多维数组、向量和字符串。还可以用cell函数创建空元胞数组,该函数可以创建一维、二维或多维元胞数组,但是创建的数组都为空元胞。
cell函数创建空元胞数组的主要目的是为数组预先分配连续的存储空间,节约内存占用,提高执行效率。
2)获得元胞数组中的数据:可通过用元胞数组名加大括号“{}”,大括号中的数值表示元胞的下标。如a{1,2}表示元胞数组中第一行第二列的元胞。
3)注意:大括号用于表示元胞的内容,小括号表示指定的元胞。要访问指定元胞中的具体元素,可以在元胞数组内容下标的后面加上指定数组元胞的下标。如:a{1,2}(1,2)表示元胞a{1,2}的元素(1,2)。
cell转换为矩阵函数为:cell2mat(c),其中c为待转换的元胞数组;
——reshape(A,m,n,p,...),将矩阵A变换为m*n*p*...的矩阵;
——permute(A,[1,3,2]),将矩阵A的第3维和第2维交换,从而满足顺序要求;
4)几个函数
celldisp(c); %显示
cell2struct();
num2cell();
iscell();
二、结构体
创建:
1)直接创建
s.name={’****‘}
2)使用关键字struct
s = struct('field1',values1,'field2',values2,…);
3)操作函数
一、元胞数组是MATLAB 的一种特殊数据类型,可以将元胞数组看作一种无所不包的通用矩阵,或者叫作广义矩阵。组成元胞数组的元素可以是任何一种数据类型的常数或者常量,每一个元素也可以具有不同的尺寸和内存占用空间,每一个元素的内容也可以完全不同,所以元胞数组的元素叫作元胞(cell)。
1)创建方法:
元胞数组的创建使用“{ }”。创建数组a的时候,使用花括号将不同类型和尺寸的数据组合在一起构成了一个元胞数组,在这个数组中有标量、多维数组、向量和字符串。还可以用cell函数创建空元胞数组,该函数可以创建一维、二维或多维元胞数组,但是创建的数组都为空元胞。
cell函数创建空元胞数组的主要目的是为数组预先分配连续的存储空间,节约内存占用,提高执行效率。
2)获得元胞数组中的数据:可通过用元胞数组名加大括号“{}”,大括号中的数值表示元胞的下标。如a{1,2}表示元胞数组中第一行第二列的元胞。
3)注意:大括号用于表示元胞的内容,小括号表示指定的元胞。要访问指定元胞中的具体元素,可以在元胞数组内容下标的后面加上指定数组元胞的下标。如:a{1,2}(1,2)表示元胞a{1,2}的元素(1,2)。
cell转换为矩阵函数为:cell2mat(c),其中c为待转换的元胞数组;
——reshape(A,m,n,p,...),将矩阵A变换为m*n*p*...的矩阵;
——permute(A,[1,3,2]),将矩阵A的第3维和第2维交换,从而满足顺序要求;
4)几个函数
celldisp(c); %显示
cell2struct();
num2cell();
iscell();
二、结构体
创建:
1)直接创建
s.name={’****‘}
2)使用关键字struct
s = struct('field1',values1,'field2',values2,…);
3)操作函数
函数名 | 功能描述 | 函数名 | 功能描述 |
deal | 把输入处理成输出 | Fieldnames | 获取结构的字段名 |
getfield | 获取结构中指定字段的值 | Rmfield | 删除结构的字段(不是字段内容) |
setfield | 设置结构数组中指定的字段的值 | Struct | 创建结构数组 |
struct2cell | 结构数组转化成元胞数组 | Isfield | 判断是否存在该字段 |
isstruct | 判断某变量是否是结构类型 |
相关文章推荐
- matlab数据类型操作
- Matlab 图像灰度变换
- Matlab-图像直方图函数imhist详解
- 12.matlab数据的导入和导出,以matlab工作区workspace为source和destination
- 深度学习Matlab工具箱代码详解
- MATLAB使用笔记
- [转载]Matlab fmincon函数用法
- 深度学习Matlab工具箱代码注释——cnnbp.m
- 深度学习Matlab工具箱代码注释——cnnff.m
- 深度学习Matlab工具箱代码注释——cnntrain.m
- 深度学习Matlab工具箱代码注释——cnnsetup.m
- 深度学习Matlab工具箱代码注释——MnistTest.m
- matlab截取图像
- matlab求取积分
- 用MATLAB将多个文件夹内的某些文件汇总到另一个文件夹
- Ubuntu14 32位系统下安装Matlab2012a步骤
- matlab笔记
- Matlab给曲线添加加参考线
- 分享:matlab实现分数阶傅里叶变换源程序
- 如何在python中读写和存储matlab的数据文件(*.mat)