【问题标题】:Divide matrix up into smaller matrix将矩阵划分为更小的矩阵
【发布时间】:2012-07-18 14:22:39
【问题描述】:

您好,我有一个大小为 ixi 的矩阵 A,我想将其划分为更小的矩阵,这样每个子矩阵都适合矩阵 B 大小 jxj 的维度。我该怎么做?

B = mat2cell(A,size(B));

好像没有。

注意:子矩阵的数量 = sqrt(n) 即如果 A 为 100x100 则将有 10 个子矩阵,如果 A 为 81x81 将有 9 个子矩阵。

谢谢

【问题讨论】:

  • 是的,它是通过对矩阵求平方来创建的

标签: matlab matrix


【解决方案1】:

对于mat2cell,如果要将矩阵一分为二,则必须为每组行/列指定大小。所以如果你需要将一个 2×2 数组分成四个 1×1 数组,那就是mat2cell(array,[1 1],[1 1])

nSub = sqrt(size(A,1));

B = mat2cell(A,nSub*ones(1,nSub),nSub*ones(1,nSub));

【讨论】:

    【解决方案2】:

    试试 repmat。这会根据您的需要将您的 axb 数据重新组织成更小的 pxqxr 矩阵。

    【讨论】:

      猜你喜欢
      • 2016-11-12
      • 2015-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-09
      • 1970-01-01
      相关资源
      最近更新 更多