冒号(:
)是MATLAB中最有用的操作符之一。它用于创建向量,下标数组,并为迭代指定。
如果要创建一个包含从1
到10
的整数的行向量,则书写为 -
1:10
MATLAB执行语句并返回一个包含整数的行向量,从1
到10
-
ans =
1 2 3 4 5 6 7 8 9 10
如果要指定一个增量值,例如 -
100: -5: 50
MATLAB执行语句并返回以下结果 -
ans =
100 95 90 85 80 75 70 65 60 55 50
再来看看一个例子 -
0:pi/8:pi
MATLAB执行语句并返回以下结果 -
ans =
Columns 1 through 7
0 0.3927 0.7854 1.1781 1.5708 1.9635 2.3562
Columns 8 through 9
2.7489 3.1416
可以使用冒号运算符创建索引向量,以选择数组的行,列或元素。
下表描述了其用于此目的(假设有一个矩阵A
) -
格式 | 目的 |
---|---|
A(:,j) |
是A 的第j 列 |
A(i,:) |
是A 的第i 行 |
A(:,:) |
是等效的二维数组。对于矩阵,这与A 相同。 |
A(j:k) |
是A(j) , A(j+1) ,... ,A(k) |
A(:,j:k) |
是A(:,j) , A(:,j+1) ,... ,A(:,k) |
A(:,:,k) |
是三维数组A 的第k 页 |
A(i,j,k,:) |
是四维数组A 中的向量。向量包括A(i,j,k,1) ,A(i,j,k,2) ,A(i,j,k,3) 等。 |
A(:) |
是A 的所有要素,被视为单列。在赋值语句的左侧,A(:) 填充A ,从之前保留其形状。在这种情况下,右侧必须包含与A 相同数量的元素。 |
示例
创建脚本文件并在其中键入以下代码 -
A = [1 2 3 4; 4 5 6 7; 7 8 9 10]
A(:,2) % second column of A
A(:,2:3) % second and third column of A
A(2:3,2:3) % second and third rows and second and third columns
运行文件时,会显示以下结果 -
A =
1 2 3 4
4 5 6 7
7 8 9 10
ans =
2
5
8
ans =
2 3
5 6
8 9
ans =
5 6
8 9