这里的循环矩阵是指某个元素单行单列只出现一次,且同一列行只有该位置元素不为0,其他为零。
代码函数:
def Permutation(H, W, RandMode):
Permu = np.zeros((H, W))
if 'H' in RandMode:
for i in range(H):
Temp = random.randint(0, W - 1)
Permu[i, Temp] = 1
elif 'W' in RandMode:
for j in range(W):
Temp = random.randint(0, H - 1)
Permu[Temp, j] = 1
return Permu
调用,创建一个4行3列的矩阵:
Permu = Permutation(4, 3, RandMode='W') print(Permu)效果
‘W’模式下:
[[0. 0. 0.] [0. 0. 0.] [1. 1. 0.] [0. 0. 1.]]
'H’模式下:
[[1. 0. 0.] [0. 1. 0.] [0. 0. 1.] [0. 0. 1.]]



