-1

在 MATLAB 中,我可以使用 (:) 运算符轻松地按列主要顺序获取矩阵元素的向量,如下所示...

EDU>> A

A =

     1     2
     3     4
     5     6

EDU>> A(:)

ans =

     1
     3
     5
     2
     4
     6

但是,我想以行主要顺序获取元素的向量。所以我想我会在使用 (:) 之前转置矩阵。但我得到这个错误......

EDU>> A'(:)
 A'(:)
  |
Error: Unbalanced or unexpected parenthesis or bracket.

为什么 ' 和 (:) 不能在这里组合?我可以分两步完成,但我希望更简洁并避免额外的变量。

EDU>> B = A'

B =

     1     3     5
     2     4     6

EDU>> B(:)

ans =

     1
     2
     3
     4
     5
     6

为什么我不能在 1 步中通过组合 ' 和 (:) 来做到这一点?这样做的正确方法是什么?

谢谢,~查克

4

1 回答 1

4

也许使用重塑

reshape(A',prod(size(A)),1)
于 2013-05-02T18:48:02.647 回答