MATLAB入門學習 2 矩陣基礎 1

2021-08-28 23:14:58 字數 3544 閱讀 5623

matlab的各種資料型別,在matlab中均以矩陣的形式存在(標量、向量都是特殊的矩陣),矩陣是matlab最基本的資料物件。

1. 1直接輸入法

在命令視窗直接輸入矩陣元素。按行輸入矩陣元素,同一行元素使用空格或者逗號隔開,不同行元素使用分號或者回車作為間隔。

>> a=[1 2 3 4];

>> b=[2,3,4,5];

>> c=[1,2,3,4;2,3,4,5];

>> a,b,c

a = 1 2 3 4

b = 2 3 4 5

c = 1 2 3 4

2 3 4 5

1. 2m檔案建立矩陣

啟動編輯器(輸入edit命令,或者使用按鈕),輸入待建立矩陣,輸入格式要求和直接輸入法類似,只不過不同行元素必須使用分號作為間隔。

1. 3特殊矩陣的建立

>> b=zeros(5)

b = 0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

>> a=ones(5,6)

a = 1 1 1 1 1 1

1 1 1 1 1 1

1 1 1 1 1 1

1 1 1 1 1 1

1 1 1 1 1 1

1. 4冒號表示式建立矩陣

冒號是乙個重要的運算子,語法e1:e2:e3,e1為初始值,e2為步長,e3為終止值,產生行向量,以e1為開始,e3為結束,步長為e2。

>> a=[1:1:10]

a = 1 2 3 4 5 6 7 8 9 10

1. 5linspace建立行向量

語法linspace(a, b, n)。a和b分別為行向量的第乙個和最後乙個元素,n為總元素,省略n自動產生100個元素的行向

2. 1矩陣索引

使用a[行,列]查詢(sub)或者使用a(序號)查詢(ind),使用序號查詢時應注意機器儲存矩陣是按列儲存的,即第一行第一列的序號是1,第二行第一列的序號是2,第三行第一列的序號是3…

>> a=[1 2 3;4 5 6;7 8 9];

>> a(2,3)

ans =

6>> a(4)

ans =

2

還能做到找元素所在的位置,可以輸出座標sub或者是序號ind:

>> a=[1 2 3;4 5 6;7 8 9];

>> [m,n]=find(a==7)

m = 3

n = 1

>> ind=find(a==7)

ind =

3

sub和ind之間還可以互相轉換:

>> a=[1 2 3;4 5 6;7 8 9];

>> sub2ind(size(a),2,3)

ans =

8>> [m,n]=ind2sub(size(a),8)

m = 2

n = 3

2. 2重排(command:reshape(a,m,n))

>>  a=[1 2 3 4;5 6 7 8];

>> b=reshape(a,4,2)

b = 1 3

5 7

2 4

6 8

2. 3轉置

來乙個單引號

2. 4拆分(索引的乙個特例)

>>  a=[1 2 3;4 5 6;7 8 9];

>> b=a(1,:) %得到矩陣a的第一行所有列

b = 1 2 3

>> c=a(1,1:2) %得到矩陣a的第一行第一列到第二列

c = 1 2

>> d=a(2,1:end-1) %得到矩陣a的第二行第一列到倒數第二列

d = 4 5

>> e=a([1,2],[1,2]) %得到矩陣a的第一行到第二行的第一列到第二列(哈哈奇怪的說法)

e = 1 2

4 5

2. 5刪除

刪除是通過賦空值來實現的。(空值是)

>>  a=[1 2 3;4 5 6;7 8 9];

>> a(1,:)=

a = 4 5 6

7 8 9

2. 6擴充套件(command:repmat(a,m,n))

將a複製,並按照m行n列來搞。

>>  a=[1 2 3;4 5 6;7 8 9];

>> b=repmat(a,3,2)

b = 1 2 3 1 2 3

4 5 6 4 5 6

7 8 9 7 8 9

1 2 3 1 2 3

4 5 6 4 5 6

7 8 9 7 8 9

1 2 3 1 2 3

4 5 6 4 5 6

7 8 9 7 8 9

2. 7壓縮(command:unique(a))

這個比較簡單,就是去掉重複的元素,我就不多bb了,直接上程式。

>> a=[1 2 2 3 3 3 4 4 4 4];

>> b=unique(a)

b = 1 2 3 4

Matlab矩陣基礎

一 建立矩陣 1 通過直接賦值建立矩陣 將矩陣元素置於中,同行元素之間用空格或 分開,行與行之間用 隔開。a 1,2,3 4,5,6 7,8,9 a 123 4567 892 通過特殊的函式進行建立 函式名稱 函式功能 ones n 構建乙個n n的1矩陣 ones m,n p 構建乙個m n p的...

機器學習 MATLAB基礎(入門)

format 顯示格式關鍵字 含義clc 清除命令視窗的顯示內容 clear 清除matlab工作空間中儲存的變數 who或whos 顯示matlab工作空間中的變數資訊 dir顯示當前工作目錄的檔案和子目錄清單 cd顯示或設定當前工作目錄 type 顯示指定m檔案的內容 help或doc quit...

MATLAB學習筆記 特殊矩陣(2)

1.通用的特殊矩陣 zeros 產生全0矩陣 ones 全1矩陣 eye 單位矩陣 rand 0 1之間均勻分布的隨機矩陣 randn 均值為0,方差為1的標準正態分佈隨機矩陣 呼叫格式 zeros m 產生 m x m 零矩陣 zeros m,n 產生m x n 零矩陣 zeros size a ...