matlab下打乱数组顺序

原文链接

一:问题

     有两个规模相同的数组,两个数组相同位置的元素一一对应,现在要将两数组的元素同时打乱顺序,并且乱序后的两数组对应位置元素要保持乱序前的对应关系。

二:方法 

      采用randperm()函数,产生随机种子,然后按随机种子重新排序,即得到排序后的数组。

三、实例

>> A=rand(5,2)

A =

    0.1232    0.1982
    0.5044    0.6723
    0.3473    0.4315
    0.0921    0.6944
    0.1478    0.2568

>> randIndex = randperm(size(A,1))

randIndex =

     1     3     2     5     4

>> A_new=A(randIndex,:)

A_new =

    0.1232    0.1982
    0.3473    0.4315
    0.5044    0.6723
    0.1478    0.2568
    0.0921    0.6944

  

posted @ 2020-06-07 15:51  蛮好不太坏  阅读(1117)  评论(0编辑  收藏  举报