如何按给定标准拆分矩阵

时间:2015-11-18 15:05:19

标签: arrays matlab matrix

我有一个矩阵

j=randn(3,17)
M=[1;10;6]

我希望将j矩阵的第一行和连续的10行分开,然后将其余的6分开。结果,我希望有三个不同的矩阵。

假设我没有看到M的大小及其内容。从这个意义上说,如何根据j的未知大小和内容自动分割M矩阵?我想避免使用嵌套的for循环。

1 个答案:

答案 0 :(得分:3)

您可能希望使用mat2cell来分割矩阵。

在你的情况下,

J = randn(3,17)
M = [1;10;6]
C = mat2cell(J, size(J,1), M)

C{1}C{3}是你的矩阵。

顺便说一句,调用矩阵j并不是一个好习惯,因为它已经由matlab定义。