MATLAB 两个或多个向量元素随机排列组合

有时需要将MATLAB的两个或多个向量的元素随机排列,如向量A=[1,2,3], B=[4,5,6],需要生成一个3x2的向量C,其中每行都是A和B两个向量的元素随机组合。这里介绍一种不需要循环的实现方法:

%构造两个向量
k1=-0.01:0.001:0.01;
k2=-0.05:0.005:0.05;
%获取索引
size_k1=size(k1);
n1=size_k1(2);
size_k2=size(k2);
n2=size_k2(2);
%随机混排元素
k1(:)=k1(randperm(n1));
k2(:)=k2(randperm(n2));
%组合
action=[k1;k2];
action=reshape(action,[n1,2]);
disp(action)

你可能感兴趣的:(MATLAB,物理建模,matlab,开发语言)