Случайная перестановка MATLAB и комбинация двух или более векторных элементов

Иногда необходимо случайным образом расположить элементы двух или более векторов MATLAB, например вектор A=[1,2,3], B=[4,5,6], и необходимо сгенерировать вектор C 3x2, где каждая строка представляет собой случайную комбинацию элементов двух векторов 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)

Guess you like

Origin blog.csdn.net/anbuqi/article/details/129340259