numpy笔记:random.permutation

Posted UQI-LIUWJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy笔记:random.permutation相关的知识,希望对你有一定的参考价值。

作用是随机排列序列

1 参数为一个数字

表示对range(n)的序列进行排序【如果n是负数的话,返回一个空的list】

import numpy as np
print(np.random.permutation(5))
print(np.random.permutation(5))
'''
[3 4 0 1 2]
[2 3 0 1 4]
'''
print(np.random.permutation(-5))#[]

2 参数为一个list

随机排序list中的元素

import numpy as np
lst=[1,3,5,7,9]
print(np.random.permutation(lst))
print(np.random.permutation(lst))
'''
[9 5 7 1 3]
[7 9 1 5 3]
'''

3 参数为多维数组

我们先分别看一个两维的和一个三维的例子:

3.1 两维数组的例子

import numpy as np
lst=[[1,3],
     [5,7],
     [9,11]]
print(np.random.permutation(lst))
print(np.random.permutation(lst))
'''
[[ 1  3]
 [ 9 11]
 [ 5  7]]
[[ 5  7]
 [ 1  3]
 [ 9 11]]
'''

3.2 三维数组的例子

import numpy as np
lst=[[[1,3],[5,7]],[[2,4],[6,8]],[[-1,-3],[-2,-4]]]
print(np.random.permutation(lst))
print('*'*10)
print(np.random.permutation(lst))
print('*'*10)
print(np.random.permutation(lst))
'''
[[[-1 -3]
  [-2 -4]]

 [[ 2  4]
  [ 6  8]]

 [[ 1  3]
  [ 5  7]]]
**********
[[[-1 -3]
  [-2 -4]]

 [[ 2  4]
  [ 6  8]]

 [[ 1  3]
  [ 5  7]]]
**********
[[[ 2  4]
  [ 6  8]]

 [[-1 -3]
  [-2 -4]]

 [[ 1  3]
  [ 5  7]]]
'''

3.3 规律

发现规律了嘛?permutation只是对第一个维度进行排序,即a[0][...],a[1][....],a[2][....],.....而对于其内部则不打乱顺序

以上是关于numpy笔记:random.permutation的主要内容,如果未能解决你的问题,请参考以下文章

CS231n学习笔记2. python numpy 之numpy

NumPy快速入门笔记

数学建模学习笔记集训十天之第三天

numpy学习笔记

机器学习笔记_1_Numpy

《Python数据分析》笔记1 ——Numpy