函数shuffle与permutation都是对原来的数组进行重新洗牌(即随机打乱原来的元素顺序)
区别:
shuffle直接在原来的数组上进行操作,改变原来数组的顺序,无返回值。
permutation不直接在原来的数组上进行操作,而是返回一个新的打乱顺序的数组,并不改变原来的数组。
代码:
a = np.arange(10)
print a
np.random.shuffle(a)
print a
print
print
a = np.arange(10)
print a
b = np.random.permutation(a)
print b
print a
[ 0 1 2 3 4 5 6 7 8 9]
[ 8 0 5 4 7 3 1 9 6 2]
[ 0 1 2 3 4 5 6 7 8 9]
[ 5 8 4 3 1 7 2 6 9 0]
[ 0 1 2 3 4 5 6 7 8 9]