Matlab 中的cell型別
cell元包是matlab中提供的一種資料型別,功能強大。
關於cell的建立:
1.跟一般建立舉證一樣,直接使用C = {A B D E}這種形式,不過這裡把"[]"改成了}"{}"
2.使用cell建立cell,C= {C1 C2},這裡C1和C2都是cell型別,直接把C1 C2作為一個cell得到的C3是一個1x2的cell陣列;使用C3 = [C1 C2],是使用C1和C2的內容來建立cell陣列
3.使用cell函式,A=cell(2,2),建立一個空的2x2的cell矩陣.
關於cell的訪問:
1.X = C(s)使用這種"()"形式的返回的是cell型別
2.X = C{s}使用這種"{}"形式的返回的是cell中的內容
3.其他的基本上與通常的陣列.矩陣訪問一樣了
4.A{1,1}(2,3:end)訪問的是A中的第一個cell裡面內容的第2行的第三個元素以後的所有元素
5.A{1,3}.name訪問的是A中的A{1,3}cell裡面結構的name值
6.cell的圖形化顯示使用命令cellplot(A)即可
關於cell的刪除:
1.cell(1)=[]刪除第一個cell,不能使用cell{1}=[],這是把第一個cell內容置空沒有刪除
>>C4={C1,C2,C3}
C4 =
{3x2 cell} {3x3 cell} {3x1 cell}
>> C4(1)=[]
C4 =
{3x3 cell} {3x1 cell}
2.cell(:)=[]刪除所有的cell,其他的刪除一次類推
>> C4(:)=[]
C4 =
{}
3.使用reshape重新reshape cell arrays
>> A={1,2,3}
A =
[1] [2] [3]
>> B = reshape(A, 1, 3);
>> B = reshape(A, 3, 1);
>> B = reshape(A, 2, 6);
??? Error using ==> reshape
To RESHAPE the number of elements must not change
使用reshape需要保證前後調整後的元素個數一致,否則會報錯