python中如何将矩阵合并并多一个维度

这是在建立一个随机的某一行为0的矩阵,再将几个矩阵合在一起使用了

使用if else和newaxis就可以很好的解决这个问题

先用if的判断,让mask拥有一个初始的值,此时用newaxis让矩阵增加一维。在else中,用concatenate进行合并即可

for i in range(random_size):
    mask_id = random.randint(0, random_num)
    one_mask = np.ones([random_num-1, dimension])
    zero_mask = np.zeros([1,dimension])
    random_mask = np.insert(one_mask, mask_id-1, values=zero_mask, axis=0)
    # print(random_mask)

    if i == 0:
        mask = random_mask[np.newaxis, :]
    else:
        random_mask = random_mask[np.newaxis, :]
        mask = np.concatenate((mask, random_mask), 0)

mask = torch.tensor(mask)
# print(mask)

猜你喜欢

转载自blog.csdn.net/qq_45347185/article/details/108961534