matlab計算基礎——矩陣與稀疏矩陣(1)

本人剛開始學習matlab的一些基礎知識,記錄下來以便日後查閱。若有錯誤,請批評指正

1、矩陣的賦值

  將A的第一行第二列賦給矩陣C

 >>C=A(1,2)

C=

      2

將矩陣B的第二列賦值給矩陣D

>>D=B(:,2)

D=

   5

   0

   1

2、矩陣的合併

D=[A B]

3、一些特殊的矩陣

 eye(4)——四階單位矩陣

ones(3,4)——3行4列的全1矩陣

magic(3)——3階的魔方矩陣

rand(3,3)——3行3列的隨機矩陣

diag(A)——由向量A生成對角矩陣

4、稀疏矩陣

(1)Matlab提供的轉換函數:SM=sparse(A)——將其他存儲方式轉換爲其他的稀疏矩陣形式

                FM=full(A)——將矩陣存儲方式從任何一個存儲形式轉換爲滿矩陣形式

(2)稀疏矩陣的創建

S=sparse(i,j,s,m,n,nzmax):sparse函數用向量i,j和s生成一個m*n的稀疏矩陣S

B=spdiags(A):從矩陣A中提取所有非零對角元素,並將其保存到B中。

[B,d]=spdiags(A):從矩陣A中提取所有非零對角元素,並將其保存到B中,d指明非零元素的對角線位置,即B的第n列元素在A中主對角線上方或下方的第幾條對角線上

(3)稀疏矩陣的信息查詢

   n=nnz(A)——返回矩陣A中非零元素的個數

s=nonzeros(A)——返回矩陣A中非零元素按列順序構成的列向量

k=nzmax(S)——返回分配給稀疏矩陣中所有非零元素存儲單元的個數

R=spones(S)——將S中的非零元素全換爲1

(4)稀疏矩陣的圖形化信息

spy(S,markersize):markersize爲整數,指定點陣大小

spy(S,’LineSpec’,markersize): 繪製稀疏矩陣S中非零元素的分佈圖,’LineSpec’繪圖標記和顏色,markersize指定繪製標記大小

title('(a) 稀疏矩陣的圖形顯示');xlabel('非零元素');ylabel('分佈圖');

figure;打開一個新的繪圖界面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章