如何把矩阵快速转化为cell元胞
   
有2种方法,均是直接调用Matlab的内置函数,直接高效。
    
     第一种方法:num2cell函数
    
    
    num2cell函数的作用是将mat类型转化为cell类型,调用格式:B = num2cell(A,dim)
    
    以A = [1:3;4:6]为例
   
A =
     1     2     3
     4     5     6
①:将A中每一个元素都转化为cell类型
B = num2cell(A)
B =
  2×3 cell 数组
    [1]    [2]    [3]
    [4]    [5]    [6]
②:将A的每一列都转化为一个cell
B = num2cell(A,1)
B =
  1×3 cell 数组
    [2×1 double]    [2×1 double]    [2×1 double]
③:将A的每一行都转化为一个cell
B =
  2×1 cell 数组
    [1×3 double]
    [1×3 double]
    
     第二种方法:mat2cell函数
    
    
    mat2cell函数的作用是将矩阵分割成不同cell元胞,调用格式为:B = mat2cell(A,M,N)
    
    其中A为待分解的矩阵,M、N为矩阵。
    
    仍以A = [1:3;4:6]为例
   
A =
     1     2     3
     4     5     6
若想将A分割为[1;4] 和 [2 3; 5 6]这样的两个矩阵,则调用方法为:
 B = mat2cell(A,2,[1 2])
B =
  1×2 cell 数组
    [2×1 double]    [2×2 double]
    
    
    若想将A分割为[1 2 3] 和 4 5 6]这样的两个矩阵,则调用方法为:
   
 B = mat2cell(A,[1;1],3)
B =
  2×1 cell 数组
    [1×3 double]
    [1×3 double]
    
   
对自己学习的总结,也希望能够帮助到像自己一样迷茫的人。
 
版权声明:本文为weixin_44803715原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
