【问题标题】:Is it possible to increase the dimension from 2D to 3D?是否可以将维度从 2D 增加到 3D?
【发布时间】:2017-03-01 14:07:41
【问题描述】:

假设我有一个向量[1,10],如何将维度增加到一个三维矩阵。我想要的是 A(:,:,1)=[1,10] 使得 size(A)=[1,2,1]。我知道使用 reshape/permute,但 A 的大小总是给出 [1,2]。

【问题讨论】:

  • 提示:MATLAB 矩阵是无限维的。试试size(A,1234)
  • MATLAB 会删除尾随的单例维度,因此这是不可能的。不过,这在 NumPy 中是可能的。

标签: arrays matlab matrix multidimensional-array


【解决方案1】:

size 函数size(A) 返回的输出中的元素数量将始终为 2 或大于 1 的最高维度的数量(以最高者为准)。 这是因为未指定维度中的所有大小都可以(从数学上讲)被视为 1。这也是 size(A,17) 将返回 1 以及 A(1,2) 与 A(1,2,1,1,1,1,1,1) 相同的原因。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-01-28
    • 1970-01-01
    • 2016-03-25
    • 2015-06-21
    • 2017-10-14
    • 1970-01-01
    • 2016-11-26
    相关资源
    最近更新 更多