有matlab函数可以执行以下操作吗?
x = [1 2 2 3];
然后基于x我想建立矩阵m = [1 2 2 3; 1 2 2 3; 1 2 2 3; 1 2 2 3]

最佳答案

您正在寻找REPMAT函数:

x = [1 2 2 3];
m = repmat(x,4,1);

您还可以使用索引来重复行:
m = x(ones(4,1),:);

甚至是外部产品:
m = ones(4,1)*x;

并使用BSXFUN:
m = bsxfun(@times, x, ones(4,1))

09-25 21:33