numpy如何在第三维增加零,以修改矩阵形状

我目前有的矩阵形状是(56138, 131, 128, 5),我想要让矩阵变成(56138, 131, 130, 5)的形状,补添0为矩阵变化需要添加的数值,我现在知道第一维可以用np.vstack,第二维可以用np.hstack,比如我之前使用了X_1 = np.hstack([X, np.zeros([56138, 3, 128, 5])])。但是我要怎么实现第三维度的变化呢??

numpy中pad函数的常用方法 - AI菌 - 博客园 一、参数解释 array为要填补的数组 pad_width是在各维度的各个方向上想要填补的长度,如((1,2),(2,2)),表示在第一个维度上水平方向上padding=1,垂直方向上padding= https://www.cnblogs.com/hezhiyao/p/8177541.html
用pad做
有帮助望采纳

用数组赋值方式解决~

# 改变矩阵维度
# (56138, 131, 128, 5),我想要让矩阵变成(56138, 131, 130, 5)
import numpy as np

a = np.ones((56138, 131, 128, 5))
b = np.zeros((56138, 131, 130, 5))

b[:, :, :128, :] = a

print('-------: ', a.shape, a[:1])
print('-------: ', b.shape, b[:1])