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需要保证前后调整后的元素个数一致,否则会报错

原文地址:https://www.cnblogs.com/wjgaas/p/4251352.html