使用whos檢視變量資訊
>> A=100;
>> whos A
得到
Name Size Bytes Class Attributes
A 1x1 8 double
建立2-20區間内以2為步長的向量
>> a=2:2:20
沒有指定步長,預設為1
特殊矩陣建立
建立所有元素為1的矩陣
>> ones(4)
建立機關矩陣
>> eye(5)
建立随機矩陣
>> rand(2,3)
建立随機數列
>> randperm(4)
設定随機種子。。。不知道幹什麼,設定以後兩次随機數一樣
>> rand('state',0);
>> randperm(4)
矩陣的合并
>> A=ones(2,5)*6;
>> B=rand(3,5);
>> C=[A;B]
得到
C =
6.0000 6.0000 6.0000 6.0000 6.0000
6.0000 6.0000 6.0000 6.0000 6.0000
0.8913 0.0185 0.6154 0.7382 0.9355
0.7621 0.8214 0.7919 0.1763 0.9169
0.4565 0.4447 0.9218 0.4057 0.4103
二維矩陣的尋址
全下标尋址
>> A=a(2,2)
單下标尋址
>> b=a(4)
邏輯下标尋址
>> B=a>5;
>> c=a(B)
使用冒号尋訪全行元素
>> d=a(1,:)
使用冒号尋訪全列元素
>> e=a(:,2)
二維矩陣指派
建立魔方矩陣
>> a=magic(4)
得到
a =
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
第三行第四列設定為0
>> a(3,4)=0
a =
16 2 3 13
5 11 10 8
9 7 6 0
4 14 15 1
将第一列設定為1
>> a(:,1)=1
a =
1 2 3 13
1 11 10 8
1 7 6 0
1 14 15 1
矩陣運算
矩陣大小
size(A)
矩陣長度
a= length(A)
計算平均值
b=sum(A(:))/numel(A)
數組運算和矩陣運算的差別
加.是數組運算
不加.是矩陣運算
矩陣的删除
删除第一列
A(:,1)=[]
矩陣的重構
将矩陣a逆時針旋轉3*90
b=rot90(a,3)
将矩陣a左右翻轉
c=fliplr(a)
将矩陣a上下翻轉
d=flipud(a)
矩陣部分元素的提取
求a的對角矩陣
b=diag(a)
矩陣第一條對角線及以上的元素取矩陣a的元素,其餘為0
c=triu(a,1)
建立稀疏矩陣為了減少記憶體
建立稀疏矩陣
S=spconvert(dr)
檢視完全矩陣
full(S)
轉換為稀疏矩陣
>> A=[1 0 0; 0 0 1; 1 2 0]; >> B=sparse(A)