我有以下matrix X
和Column vector H
:
X=[ 1 2 3; 2 3 4; 3 4 5];
H=[1; 2 ;3];
m=[X(:,1) H(:) X(:,2) H(:) X(:,3) H(:)];
如何在添加随机数后保持矩阵 m 中的每一列 H 相同的同时向 m 的所有元素添加一个小的随机数?
您应该单独添加随机数,然后构建组合矩阵。
Xnew = X + rand(size(X)); % replace 'rand' with the random numbers you want
Hnew = H + rand(size(H));
mnew = [Xnew(:,1) Hnew(:) Xnew(:,2) Hnew(:) Xnew(:,3) Hnew(:)];
您可以将随机添加到X
而不是m
rX = X + rand(size(X)); % add uniformly distributed random numbers in [0,1] interval
m=[rX(:,1) H(:) rX(:,2) H(:) rX(:,3) H(:)];