1

我想将一个 NxM 矩阵复制到一个 NxMx3 矩阵中,即在第三维中有 3 个输入矩阵的副本。我怎么做?

4

2 回答 2

1

If A is your NxM matrix, then the NxMx3 matrix is:

B = hypermat([size(A), 3], kron(ones(3, 1), A(1:$)))

or

B = hypermat([size(A), 3], ones(3, 1).*.A(1:$))
于 2010-09-22T12:20:31.543 回答
0

这是一个更好更简单的答案(不使用任何运算符):

B = A(:,:,[1 1 1])

示例(这里两份就足够了):

-> a=[1 2;3 4]
 a  = 

   1.   2.
   3.   4.

--> a(:,:,[1 1])
 ans  =

(:,:,1)

   1.   2.
   3.   4.
(:,:,2)

   1.   2.
   3.   4.
于 2021-04-22T07:26:06.330 回答