Matlab的基本數據結構
基本上,Matlab有3種數據結構,數組,元胞數組(cell)和結構體(struct)。
1 數組
在同一個數組的的數據元素類型必須相同
1.1 一維數組(向量)
1.1.1 創建
(1)直接賦值法:x = [1 2 3 4] %每個數據元素之間有空格或逗號
(2)冒號法:x =a : step : b ,a,b為數組元素起止值,step為數組元素間距值,可以省略不寫默認為1
(3)等距函數生成法:x = linspace(a,b,n),a,b為數組元素起止值等分為n份,默認值是100可省略不寫
(4)對數函數生成法:x = logspace(a,b,n),a,b為數組元素起止值等分為n份,默認值是50可省略不寫
1.1.2 訪問
數組最尋常的尋訪方式就是根據下標尋訪,有以下幾種方式:
x = [1 2 3 4] %下標都是從1開始
x(2) = 2
x(1:3) = [1,2,3] %生成子數組
x(2:end) = [2,3,4]%end表數組最后一個元素的位置
x(3:-1:1) = [3,2,1]%負數倒敘排
x(find(x>2)) = [3,4]
x([1 2 3 3 2 1]) = [ 1 2 3 3 2 1]%對元素可重復尋訪
x([1 2 ]) = [11 22] % x = [11 22 3 4 5]可以這樣為元素賦值
1.2二維數組(矩陣)
當二維數組帶有線性變換的含義時,二維數組就可以看成一個矩陣
1.2.1 創建
x = [1,2,3;4,5,6;7,8,9] %3*3矩陣
1.2.2 訪問
幾個特殊的表示方式:
x([1,2],[3]) %表示x矩陣的第1,2行的第3列
x(:,2)%表示所有行的第二列
x(:)%表示轉換成列向量
2 元胞數組(cell)
這個也是數組,但是這種數組可以容納不同數據類型的元素
2.1 創建
構造單元數組有左標記法和右標記法,{}是單元數組的標志。
例如創建一個2*2的單元數組c,
左標志法:
c{1,1} = [1,2]
c{1,2} = [‘nih’]
c{2,1} = eye(3)
c{2,2} = {1:4}
右標志法:
c(1,1) = {1,2}
c(1,2) = {‘nih’}
c(2,1) = {eye(3)}
c(2,2) = {1:4}
12.2 訪問
用左標記的方式訪問。
2.3 刪除元素
c{1,1}={[]}
2.4 函數支持
略
3 結構體(struct)
與C語言的結構體性質類似,就是屬性的集合。
3.1 創建
person.name = 'Clayton'
person.score = 98.5
3.2 訪問
與創建的方式類似