冒號(:
)是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