【问题标题】:numpy concatenate over dimensionnumpy 在维度上连接
【发布时间】:2020-08-02 14:25:33
【问题描述】:

我发现自己经常做以下事情,我想知道是否有一种“规范”的方式来做这件事。

我有一个 ndarray 说 shape = (100, 4, 6),我想通过将 4 个长度为 6 的向量连接成一个向量来减少到 (100, 24)

我可以使用 reshape 来执行此操作,但我一直在手动计算新形状

np.reshape(x,shape=(a.shape[0],a.shape[1]*a.shape[2]))

理想情况下,我只需提供我想要减少的维度

np.concatenate(x,dim=-1)

但是 np.concatenate 对 ndarray 的可枚举进行操作。我想知道是否可以在 ndarray 轴上提供迭代器,但没有进一步研究。这里通常的模式是什么?

【问题讨论】:

  • shape=(a.shape[0], -1) 更简单。重塑形成一个视图。 concatenate 一份。
  • 要使用连接,首先在-2轴上分割。

标签: numpy numpy-ndarray


【解决方案1】:

您可以通过使用 -1 来避免计算一维:

x.reshape(a.shape[0], -1)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-24
    • 2021-05-02
    • 2020-07-24
    • 2011-05-08
    • 2022-01-25
    • 2021-07-10
    • 1970-01-01
    相关资源
    最近更新 更多