第三章 数组
- 前言
- 1.数组的创建
- 1.1创建多维数组
- 2.数组的属性
- 2.1数组结构
- 2.2数组大小
- 2.3数组的维度
- 2.4数组数据类型
- 3.数组操作
- 3.1数组索引和寻址
- 3.2数组的查找
- 3.3数组的排序
- 4.关系运算和逻辑运算
- 总结
前言
MATLAB中的数组无处不在,任何变量在MATLAB中都是以数组的形式存储和运算的。
1.数组的创建
MATLAB中一般使用方括号[ ]、逗号或空格、分号来创建数组,方括号中给出数组的所有元素,同一行(列)中的元素用逗号或空格隔开,不同行(列)之间用分号隔开。此外,创建一维数组还可以使用函数linspace和logspace,以及转置符号。
1.1创建多维数组
在MATLAB中,二维数组的行称为第一维,列称为第二维,而对于第三维则习惯地称为页。二维数组可以理解成直角坐标系,三维数组可以简单的理解成空间坐标系。通常将三维或者三维以上的数组称为高维数组。创建三维数组通常有三种方法。
(1)下标引用法
(2)低维数组创建法
(3)函数法
2.数组的属性
数组的属性包括数组的排列结构、尺寸大小、维度、类型数据等。
2.1数组结构
数组的结构指的是数组中元素的排列方式。MATLAB提供了多种测试函数。
2.2数组大小
数组大小是数组最常用的属性,MATLAB最常用的返回数组大小的函数是size函数。它有以下最常用的两种方法。
(1)g=size(A):将数组A的行列信息返回给变量g,即g=[m,n]。
(2)[a,b]=size(A):即a=m,b=n。
length函数返回一维数组的长度,即length(A)返回数组中元素的个数;当A为二维数组时,length(A)返回size(A)得到的两个数中较大的那个。
2.3数组的维度
通俗地来讲,数组的维度就是数组具有的方向。MATLAB中计算数组的维度除了用length(size(A)),还可以使用ndims函数,这两种方法实质上一样。
2.4数组数据类型
数组作为MATLAB的一种内部数据存储和运算结构,其元素的取值是各种各样的数据类型。对于如何测试数组的数据类型,提供了如下几种函数。
这些函数都是is开头,紧跟着关键字,它们的返回结果依然是逻辑类型,返回0表示不符合测试条件,返回1表示符合测试条件。
3.数组操作
3.1数组索引和寻址
MATLAB中,普通二维数组元素的索引方式可以分为双下标和单下标索引两种。对于双下标就是用一个有序数对来表示元素的位置,第一个数字指定元素的所在行,第二个数字指定元素的所在列。对于单下标,A(x,y)实际上对应A((y-1)*m+x),其中A为m行n列数组。单双下标索引的转换用到了函数sub2ind,双下标转换成单下标,IND=sub2ind(size(A),i,j);单下标转换成双下标[i,j]=sub2ind(size(A),IND)。
3.2数组的查找
a=find(A)返回数组A中非零元素的单下标索引。
[a,b]=find(A)返回数组A中非零元素的双下标索引。
3.3数组的排序
4.关系运算和逻辑运算
MATLAB中的运算包括算术运算、关系运算、逻辑运算。而在程序设计中应用十分广泛的是关系运算和逻辑运算。
MATLAB中的逻辑运算有3类:
(1)逐个元素的逻辑运算,包括逻辑与或非
(2)捷径逻辑运算,包括逻辑与&&和逻辑或||
(3)逐位逻辑运算
总结
以上就是我今天学习的内容,希望对你有所帮助。大家一起加油!