Matlab:通过扩展其向量来扩展矩阵

时间:2014-05-29 19:35:23

标签: arrays matlab vector matrix multidimensional-array

我有d x m x n矩阵A(解释:对于每个n,有m维度向量d)。我想按如下方式扩展每个d维向量:

考虑维度为d的向量v :( 1,2,...,d)(它是' s(x_1,x_2,...,x_d)但我删除了&#39 ; x _'为简单起见)。目标是扩展v以获取格式为d*d的向量:

(1,1,...,1,2,...,2,...,d,d,...,d)

有人可以建议我快速做到这一点吗? (我想在每次迭代时使用循环并扩展每个向量非常慢。)

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:3)

该死!

reshape(permute(repmat(permute(A,[1 4 2 3]),[1 d]),[ 2 1 3 4]),d*d,m,n)

答案 1 :(得分:0)

reshape(A(ceil(1/d:1/d:numel(A))), d^2,m,n)