【问题标题】:Stacking 4-D np arrays to get 5-D np arrays堆叠 4-D np 数组以获得 5-D np 数组
【发布时间】:2022-06-11 01:50:35
【问题描述】:

对于 Python 3.9 和 numpy 1.21.5,我有四个 4-D numpy 数组:

x = np.random.normal(loc=0.0, scale=1.0, size=(5, 5, 7, 10))
y = np.random.normal(loc=0.0, scale=1.0, size=(5, 5, 7, 10))
z = np.random.normal(loc=0.0, scale=1.0, size=(5, 5, 7, 10))
w = np.random.normal(loc=0.0, scale=1.0, size=(5, 5, 7, 10))

x.shape, y.shape, z.shape, w.shape
# ((5, 5, 7, 10), (5, 5, 7, 10), (5, 5, 7, 10), (5, 5, 7, 10))

我想将它们堆叠以获得所需的形状:(4, 5, 5, 7, 10)

到目前为止我尝试过的代码包括:

np.vstack((x, y, z, w)).shape
# (20, 5, 7, 10)

np.concatenate((x, y, z, w), axis=0).shape
# (20, 5, 7, 10)

np.concatenate((x, y, z, w)).shape
# (20, 5, 7, 10)

他们似乎在做 (4 * 5, 5, 7, 10) 而不是所需的形状/尺寸:(4, 5, 5, 7, 10)

帮助?

【问题讨论】:

    标签: python-3.x multidimensional-array numpy-ndarray


    【解决方案1】:

    以下代码可以得到预期的形状:

    np.array([x, y, z, w])         # shape --> (4, 5, 5, 7, 10)
    

    【讨论】:

      猜你喜欢
      • 2018-08-28
      • 1970-01-01
      • 2020-10-17
      • 1970-01-01
      • 2011-11-04
      • 1970-01-01
      • 2017-12-04
      • 1970-01-01
      • 2016-02-15
      相关资源
      最近更新 更多