MATLAB程式設計/向量和矩陣/向量運算
如果向量的元素遵循順序加法,我們可以使用括號和以下內容
例如,如果我們想要一個從數字1開始,到數字19結束,增量值為3的向量,我們可以輸入以下命令
>> V = (1:3:19)
V =
1 4 7 10 13 16 19
要訪問向量中的值,您只需要指定向量和陣列索引,從 1 到 n。
使用上面向量 V 的示例,我們訪問向量 V 中的第三個元素,我們輸入以下命令
>> V(3)
ans =
7
我們可以透過輸入起始索引和結束索引來訪問多個元素。例如,我們需要訪問第 3 個元素到第 6 個元素,我們輸入如下
>> V(3:6)
ans =
7 10 13 16
我們還可以使用length函式來了解向量的長度,例如我們可以知道 V 的長度。向量 V 中有 7 個元素,因此答案應該是 7
>> length(V)
ans =
7
我們可以使用sum函式查詢向量的和,它透過將向量中的所有數字加在一起得到這個值:例如,1+4+7+10+13+16+19
>> sum(V)
ans =
70
我們可以分別知道向量中哪個是最大數和最小數,我們可以使用min和max函式來實現。
>> min(V)
ans =
1
>> max(V)
ans =
19
mean函式用於查詢向量中的中心/中間值。
>> mean(V)
ans =
10
average函式用於查詢向量的平均值。
>> average(V)
ans =
10
>> % Another way of finding average
>> sum(V)/length(V)
ans =
10
要查詢標準差,需要使用std函式。
標準差是衡量一組值的變異或離散程度的指標。標準差低表示值傾向於接近該組的均值(也稱為期望值),而標準差高表示值分佈在更寬的範圍內。
>> std(V)
ans =
6.4807
有兩種不同的方法可以為向量建立隨機排列
a. randperm(N)返回一個包含整數 1:N 的隨機排列的向量。
>> P=randperm(7)
ans =
1 6 2 3 4 5 7
b. randperm(N,K)返回一個行向量,其中包含從 1:N 中隨機選擇的 K 個唯一整數。
>>>> P=randperm(7,5)
P =
5 1 6 2 3
您可能希望對向量進行排序,您可以在 MATLAB 中執行此操作。
如果要以降序方式對向量進行排序,請使用以下示例。注意,我們使用上面隨機排列示例 b。
>> % using argument 'descend' to sort from big to small number
>> S=sort(P,'descend')
S =
6 5 3 2 1
>> % using argument 'asscend' to sort from small to big number
>> S=sort(P,'ascend')
S =
1 2 3 5 6
要查詢點積,您可以使用dot函式。
注意:兩個向量必須具有相同的長度。答案通常以標量的形式出現。
向量的點積計算如下
>> % creating row vector A and B
>> A = [3 ,7 , 2]
A =
3 7 2
>> B = [1,2,5]
B =
1 2 5
>> dot(A,B)
ans =
27
要查詢叉積,可以使用cross函式。注意:兩個向量必須具有相同的長度3。答案通常以3維向量的形式出現。
待辦事項:查詢可以很好地說明叉積的圖片。
>> cross(A,B)
ans =
31 -13 -1
要查詢向量中重複次數最多的值,可以使用mode函式。
>>%create vectors with random numbers
>> A=randi(50,1,10)
A =
18 42 30 28 46 15 38 38 20 29
>> mode(A)
ans =
38
>>%38 appear twice in that vector