关闭

元胞cell的一些用途

标签: matlab
429人阅读 评论(0) 收藏 举报
分类:
简介
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的删除
cell(1)=[]删除第一个cell,不能使用cell{1}=[],这是把第一个cell内容置空没有删除
>>C4={C1,C2,C3}
C4 =
    {3x2 cell}    {3x3 cell}    {3x1 cell}
>> C4(1)=[]
C4 =
    {3x3 cell}    {3x1 cell}
cell(:)=[]删除所有的cell,其他的删除一次类推
>> C4(:)=[]
C4 =
     {}
使用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需要保证前后调整后的元素个数一致,否则会报错
总结
灵活使用cell来组织数据,转换数据在MATLAB编程中有重要的作用。有很多函数的返回类型为cell的。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:24357次
    • 积分:518
    • 等级:
    • 排名:千里之外
    • 原创:27篇
    • 转载:20篇
    • 译文:0篇
    • 评论:0条
    文章分类