如何把矩阵快速转化为cell元胞

如何把矩阵快速转化为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]

在这里插入图片描述

对自己学习的总结,也希望能够帮助到像自己一样迷茫的人。

参考内容:
Matlab num2cell函数的用法
matlab中的mat2cell及cellfun使用

  • 24
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值