有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))