矩陣的建立
直接輸入元素:
a=[1,2,3] b=[1 2 3;4 5 6]
c=[1 3 6
2 4 8]
零矩陣:
a=zeros a為單元素矩陣
b=zeros(4) b為4*4矩陣
c=zeros(2,3)
1矩陣:ones
冒號表示式建立行向量:(1行n列矩陣)
e1:e2:e3
e1起始值 e2步長 e3結尾值
a=1:3:15
a=[1 4 7 10 13]
linspace(a,b,n)函式
a,b分別為首尾元素 n為元素個數
矩陣的操作
索引元素
a=[1 2 3
4 5 6
7 8 9]
a(2,3)是6 注意matlab中座標從1開始
a(8)為6 matlab中矩陣按列順序儲存
find(a==6)輸出為8
[m,n]=find(a==6) m=2 n=3
若有重複元素則將所有位置輸出,m,n則作為1*2向量
座標表示方法轉換
sub2ind(size(a),m,n) 第乙個引數為矩陣大小,m,n為行列座標
sub2ind(size(a),2,3) 輸出為8 其中size(a)實際為[3 3]
[m,n]=ind2sub(size(a),8) m=2,n=3
重排矩陣
reshape(a,m,n) 將a重新排列為m*n的矩陣若元素個數不符則不可執行
reshape(a,1,9)或reshape(a,9,1)
b=a(:) 將a轉變成列矩陣
轉置矩陣
b=a' b和a則互為轉置矩陣
矩陣拆分
a(m,n) 獲取單個元素
a(m,:) 獲取a的m行所有元素
a(:,n) n列的所有元素
a(m:n,j:k) m-n行j-k列的元素
a(m,n:end) m行n到最後列元素,若不知道行列大小情況可以使用end
a([m,n],[k,j]) 獲取所有組合到的元素
刪除元素
a(1)= 第乙個元素被刪除,剩餘元素變為行矩陣
a(m:) 刪除第m行元素 也可以直接刪除某列
擴充套件與壓縮
repmat(a,[m,n]) 將a的行複製m次,列複製n次
unique(a) 將重複元素刪除
unique(a,'rows') 刪除重複的行
---恢復內容結束---
matlab 矩陣操作
矩陣構造 1 簡單矩陣構造 最簡單的方法是採用矩陣構造符 構造1 n矩陣 行向量 時,可以將各元素依次放入矩陣構造符內,並且以空格或者逗號分隔 構造m n矩陣時,每行如上處理,並且行與行之間用分號分隔。2 特殊矩陣構造 在matlab中還提供一些函式用來構造特殊矩陣,這些函式如下表所示。1 ones...
matlab矩陣的操作
l 矩陣的輸入 i.直接輸入建立矩陣 輸入方法是先鍵入左方括弧 然後按行直接鍵入矩陣的所有元素,最後鍵入右方括弧 注意 整個矩陣以 和 作為首尾,同行的元素用 或空格隔開,不同行的元素用 或按enter鍵來分隔 矩陣的元素可以為數字也可以為表示式,如果進行的是數值計算,表示式中不可包含未知的變數。例...
MATLAB 矩陣操作(三)
特殊向量和特殊矩陣 1 特殊向量 t 0 0.1 10 產生從 0 到 10 的行向量,元素之間間隔為 0.1 t linspace n1,n2,n 產生 n1 和 n2 之間線性均勻分布的 n 個數 預設 n 時,產生 100 個數 t logspace n1,n2,n 預設 n 時,產生 50 ...