第1个回答 推荐于2016-05-27
假设行数或列数为n
vector = randperm(n);
vector是从1到n的整数随机排列的向量
按照vector里各个元素的值重新排列行列向量就可以了
假设待排列矩阵为M,排列后的矩阵为A
按列随机排列
A = zeros(size(M));
for i=1:n
A(:,i)=M(:,vector(i));
end
第2个回答 推荐于2017-12-16
% matrix_In是输入矩阵
% matrix_Out是输出矩阵
function [matrix_Out] = Randmatrix(matrix_In)
[line column] = size(matrix_In);
matrix_Out=zeros(line,column);
for i=1:line
seed=randperm(column);
matrix_Out(i,:)= matrix_In(i,seed);
end
end本回答被网友采纳