2016-07-29 41 views
1

我想创建多维数组,沿着其他维度重复一个向量。例如。为行向量ab我可以创造A具有A(:,n,m,k)=a所有nmk,同样B具有B(n,:,m,k)所有nmk如下:MATLAB:多维重复行向量

A=repmat(a', [1 length(b) length(c) length(d)]); B=repmat(b, [length(a) 1 length(c) length(d)]);

我该怎么办C和D的等价物?即使得C(n,m,:,k​​)= c,其中c是行向量。

回答

1

解决它自己,可以使用该置换功能,例如:

B=repmat(b, [length(x) 1 length(a) length(c)]); B=permute(B,[1 3 2 4]);