【问题标题】:Extract square matrices from a Nx2 matrix从 Nx2 矩阵中提取方阵
【发布时间】:2019-08-01 21:19:45
【问题描述】:

我正在研究 matlab 2014,我有一个 5124x2 的矩阵,我想提取所有 2562 个方阵。 我发现唯一的解决方案是使用 mat2Cell,但它对我不起作用。最后我真的不需要单元格数组,我想要的只是所有的方阵

%example of data
A = rand(5124,2);
C = mat2cell(A,2,2*ones(2562,1));

我收到以下错误:

Error using mat2cell (line 106)
Input arguments, D1 through D2, must sum to each dimension of the input matrix size, [5124     2].'

你能帮帮我吗?谢谢

【问题讨论】:

    标签: matlab matrix square


    【解决方案1】:

    要修复您的代码,应该是:

    C = mat2cell(A,2*ones(2562,1));
    

    要将A 重塑为 2x2 切片的 3D 矩阵,您可以使用:

    C = permute(reshape(A.',2,2,[]), [2,1,3]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-14
      • 1970-01-01
      • 1970-01-01
      • 2018-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多