冒号(:)是最有用的运算符在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) | is the jth column of A. |
A(i,:) | is the ith row of A. |
A(:,:) | is the equivalent two-dimensional array. For matrices this is the same as A. |
A(j:k) | is A(j), A(j+1),...,A(k). |
A(:,j:k) | is A(:,j), A(:,j+1),...,A(:,k). |
A(:,:,k) | is the kth page of three-dimensional array A. |
A(i,j,k,:) | is a vector in four-dimensional array A. The vector includes A(i,j,k,1), A(i,j,k,2), A(i,j,k,3), and so on. |
A(:) | is all the elements of A, regarded as a single column. On the left side of an assignment statement, A(:) fills A, preserving its shape from before. In this case, the right side must contain the same number of elements as 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