Matlab自学笔记三十:元胞数组的修改、添加、删除和连接 |
您所在的位置:网站首页 › matlab怎么给元胞数组赋值 › Matlab自学笔记三十:元胞数组的修改、添加、删除和连接 |
1.说明 元胞数组的子数组或元素也是元胞型的,其元素内容(值)是本身类型,因此,在添、删、改和连接处理时,必须明确每个元素的值的类型和大小,否则,编程报错是不可避免的了。看本文前建议先看上篇Matlab自学笔记二十九:元胞数组的创建、索引和转换方法 2.元胞数组的修改 程序示例如下: b={1,2,magic(3) 'a',["a","b"],[]} %理解:元胞数组是大箱子,用大括号表示,内部的元素是盒子,盒子也是元胞型,盒子与箱子遵循Matlab预设规则,打开盒子往里面装内容,内容可以是任意大小任意格式的内容。 % b(1,1)=100 %元胞数组数据修改,小括号索引出第1行第1列元胞型,100双精度型无法赋值(小括号索引到盒子),报错 b(1,1)={100} %赋值也应包装成盒子(元胞型)再赋值 b{1,1}=100 %(大括号索引到盒子的内容)所以使用任意数值赋值即可 3.元胞数组的添加、删除 程序示例如下: b={1,2,magic(3) 'a',["a","b"],[]} b(3,4)={8} %b本身是2行3列,如此扩展为3行4列,第3行第4列为{8}其余扩展元素默认空矩阵填充 % b(1,1)=[] %报错,删除1个元素无法保持矩阵矩形 b(end,:)=[] %最后一行删除 b{1,1}=[] %大括号索引到盒子里的内容,并置为空(删除),盒子仍存在 4.元胞数组的连接(重要) 元胞数组的连接有两种方式: (1)中括号[],遵从常用的矩阵连接的规则,连接的矩阵在类型和大小上有一定的匹配要求,若不满足,会报错:大小或者类型不一致; (2)大括号{},连接后组成更大的元胞数组,特点是,连接的数组可以是任意类型和任意大小,缺点是,数据的运算和处理等不如矩阵数组那样灵活; 程序示例如下: b={1,2,magic(3) 'a',["a","b"],[]} %中括号连接:把元胞数组内某些元素进行重排 [{1 2 3},{'a'}] %水平连接 % [{1 2 3};{'a'}] %列数不同,报错 [{1 2 3};{'a',[],[]}] %列数相同 %大括号连接:把元胞数组视为一个元素进行重组(可理解为元胞数组的嵌套,元胞数组内可容纳任意类型,包括元胞型自身) {{1 2 3},{'a'}} %水平连接 {{1 2 3};{'a'}} %纵向排列 {{1 2 3},{'a'},{},[],string(missing),uint16(10)} %只要占用元胞数组内的盒子,都会显示 相关内容推荐 31.6 Matlab绘制条形图柱状图,改变单个柱的颜色,堆叠显示,改变线型线宽 66.53 MatlabApp课设作业:简易一元高次方程解算显示器 22.13 Matlab非线性函数拟合问题lsqcurvefit使用最小二乘法求解非线性函数拟合问题曲线拟合/数据拟合/任意形式函数的拟合 21.1 一节讲透:插值入门,以及Matlab编程实现 38.1 从图像曲线上提取坐标数据:测量长度,测量角度、圆心和半径 66.20 文献上的图片是怎么用Matlab做出来的/数学建模必备技能 1.1 Matlab速成宝藏课/数学建模必备入门视频 45.1 一个实例入门Matlab深度学习|卷积神经网络 47.1/Matlab遗传算法/概念/原理/编程演示数学建模 End |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |