Permutation:(一组事物可能的一种) 序列,排列,排列中的任一组数字或文字;
这个函数的使用来随机排列一个数组的,第一个例子如图1所示:
对多维数组来说,是多维随机打乱而不是1维,例如:
第一次运行结果(代码在左侧),如图2所示:
第二次运行结果(代码在左侧),如图3所示:
如果要利用次函数对输入数据X、Y进行随机排序,且要求随机排序后的X Y中的值保持原来的对应关系,可以这样处理:
permutation = list(np.random.permutation(m)) #m为样本数
shuffled_X = X[permutation]
shuffled_Y = Y[permutation].reshape((1,m))
图4中的代码是针对一维数组来说的,(图片中右侧为运行结果):
图5中的代码是针对二维数组来说的,(图片中右侧为运行结果):
代码示例:
# permutation()函数使用示例
def testPermutation():
print("==================打乱数组元素的顺序==================")
x = np.arange(10).reshape(5, 2)
print("原数组:")
print(x)
x_permutation = np.random.permutation(x)
print("打乱后的数组:")
print(x_permutation