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需要保證前后調整后的元素個數一致,否則會報錯