matlab分块矩阵取某一块_科学网—Matlab: 如何对矩阵分块并对各块进行运算 - 刘磊的博文...

本文介绍了如何使用MATLAB的mat2cell命令将矩阵分块,并通过cellfun进行运算,如求平均值和总和,展示了cell型矩阵的运算技巧。
摘要由CSDN通过智能技术生成

矩阵分块用mat2cell命令,其用法如下图所示(取自Matlab Help):

8511413cad2eed61a2db8004747b25d9.png

例1:矩阵 A=[1 2 3 4;4 5 6 7;7 8 9 10;10 11 12 13], 将矩阵等分为4个2*2矩阵。

>> A=[1 2 3 4;4 5 6 7;7 8 9 10;10 11 12 13]

A =

1     2     3     4

4     5     6     7

7     8     9    10

10    11    12    13

>> B=mat2cell(A,[2 2],[2 2])

B =

[2x2 double]    [2x2 double]

[2x2 double]    [2x2 double]

对每个分块进行运算,利用cellfun函数。

例2:求上述各个分块的平均值。

>> C=cellfun(@mean,cellfun(@mean,B,'UniformOutput',false))

C =

3     5

9    11

注意最里面的mean是求各块列平均,需要再平均一次才得到每一分块的总平均。应为最里面的mean运算后得到的是cell矩阵,所以false掉‘UniformOutput’参数。外面的一个m

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值