numpy打乱数组或打乱矩阵行
使用numpy.random.shuffle函数,能够打乱ndarray对象的第一维度,对于数组来说,就是整体被打乱。
对于矩阵来说,第一维度行被打乱。可以在打乱训练数据或测试模型性能的时候使用。
- Parameters: x: array_like
- Returns: None
e.g.
1 2 3 4 | >>> arr = np.arange( 10 ) >>> np.random.shuffle(arr) >>> arr [ 9 , 1 , 2 , 7 , 5 , 3 , 0 , 8 , 4 , 6 ] |
多维数组
1 2 3 4 5 6 7 8 9 | >>> arr = np.arange( 9 ).reshape(( 3 , 3 )) # array([[0, 1, 2], # [3, 4, 5], # [6, 7, 8]]) >>> np.random.shuffle(arr) >>> arr array([[ 0 , 1 , 2 ], [ 6 , 7 , 8 ], [ 3 , 4 , 5 ]]) |
numpy.random.shuffle打乱数组或者列表的顺序
numpy.random.shuffle
注:打乱数组时,只沿着多维数组的第一个轴移动数组。子数组的顺序改变了,但它们的内容保持不变.
shuffle(x)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | Modify a sequence in - place by shuffling its contents. This function only shuffles the array along the first axis of a multi - dimensional array. The order of sub - arrays is changed but their contents remains the same. Parameters - - - - - - - - - - x : array_like The array or list to be shuffled. Returns - - - - - - - None Examples - - - - - - - - >>> arr = np.arange( 10 ) >>> np.random.shuffle(arr) >>> arr [ 1 7 5 2 9 4 3 6 0 8 ] Multi - dimensional arrays are only shuffled along the first axis: >>> arr = np.arange( 9 ).reshape(( 3 , 3 )) >>> np.random.shuffle(arr) >>> arr array([[ 3 , 4 , 5 ], [ 6 , 7 , 8 ], [ 0 , 1 , 2 ]]) """ |
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持IT俱乐部。