numpy.random.shuffle(x) and numpy.random.permutation(x),这两个有什么不同,或者说有什么关系?
答: np.random.permutation与np.random.shuffle有两处不同: 如果传给permutation一个矩阵,它会返回一个洗牌后的矩阵副本;而shuffle只是对一个矩阵进行洗牌,无返回值。 如果传入一个整数,它会返回一个洗牌后的arange。
下面的源码可以看出来:
3280 def
permutation(self, object x):
...
3307 if isinstance(x, (int,
np.
integer)):
3308 arr =
np.arange(x)
3309 else:
3310 arr =
np.
array(x)
3311 self.shuffle(arr)
3312 return arr
转载请注明原文地址: https://ju.6miu.com/read-670911.html