杜Eigerman,MathWorks公司
创建和操作MATLAB®阵列,包括使用索引存取元件。
MATLAB存储所有类型的数组中的数据。这不仅包括数字数据,但如字符串或甚至复杂的对象的其他类型的数据。所以,使用数组是用MATLAB工作的基础。随着MATLAB语言,你可以创建数组,访问和分配值数组元素使用多种索引方法,并执行许多其他操作来操作数组的内容。
让我们先来看看如何创建阵列。可以创建通过使用方括号和逗号或空格来在一排单独的列中如A等于1,2,3,4和分号彼此分开的列指定特定值的数组。可以创建相等间隔与列操作员的一个二维阵列,例如A等于1至10,A等于以2步骤1到10,或A等于在负2的步骤10至1。
该linspace空间功能类似于结肠操作,让您指定的起点和终点值,但给出了如7.你可以用置运算符更改行列点的数量控制。您也可以拨打一个号码的产生具有不同内容的基本基质如的,零或随机数的功能。它可以是更方便的通过打开它入变量编辑器来检查一个数组的内容。
现在让我们看看如何使用不同形式的索引访问和更改数组元素的值。可以通过简单的行和列索引来指定数组的元素。这是A的元素在第一行第二列。
可以指定的范围内的行和列的一个阵列的存取部分,如行1,列1到2中的元件不必是连续的,例如行1,列1和3可以指定所有的行或通过使用结肠操作者,在这种情况下,指定所有列的列。您还可以使用结束关键字,如第1行,列2月底或2结束减1。
您可以通过在等式的左边指定索引来为特定的元素分配值,例如第1行,第2列到最后减1等于10 10。您可以删除数组的一行或多行(如第1行到第2行)以及所有列,方法是将它们分配给由方括号表示的空矩阵。A现在缩短了两行。
有时,将这样的二维数组视为一维数组是很方便的,就好像所有列都被堆叠到一个列中并指定一个索引。这叫做线性索引。例如,可以通过一个线性索引5访问第1行第2列中的元素。
这是可能的,因为MATLAB阵列存储明智列在内存中。换句话说,阵列中的每一列存储一个接一个。因此,在第1行第2列的元素,实际上,第五元件存储。使用线性索引时其自身指定的所有元素中所用的冒号运算符,并且它返回与整个阵列的内容的单一列向量。
您也可以访问元素与所谓的在其中指定充满true或false值,像一个面具大小相等的索引阵列逻辑索引。这对于在其值匹配某个标准如A元件上操作的有用的是小于0.5,这产生逻辑值的大小为A与真值相同在此显示为1的阵列每当A小于0.5。注意逻辑值象true和false分别显示为1和0。
我们可以使用逻辑阵列如此来执行逻辑索引诸如组A的元素,其中A是小于0.5到负1.找到符合条件的数组元素的索引,使用查找功能,发现非零与一个逻辑表达式一起值。这给出了满足条件A小于0.5的元素的线性索引。你可以得到的行和列索引来代替。您可以看到文档中的所有索引技术信息。
最后,让我们来看看如何可以提取有关数组的一些有用的信息,并执行一些基本操作。你可以得到一个数组的基本信息,如确定它是否是空的,得到通常用于所有尺寸的1D arrays--大小,或元素的总数length--。正如我们前面所看到的,用方括号创建数组让我们连接一个数量的阵列一起水平或垂直。其他有用的数组操作功能包括翻转左右和翻转上下,repmat复制矩阵,重塑和排序。
虽然这里展示的示例使用一维和二维数组,但这些技术中的大多数也可以应用于多维数组。有关更多信息,请参阅文档。演示到此结束。现在在MATLAB中尝试这些特性,或者观看其他视频。
您也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。