【问题标题】:NumPy: concat/stack ndarrays of different size [duplicate]NumPy:不同大小的 concat/stack ndarrays
【发布时间】:2020-11-26 20:27:47
【问题描述】:

我有多个不同大小的 ndarray(例如 a = np.arange(3)b = np.arange(4),我想将它们连接/堆叠到一个 ndarray res 与 dtype ndarray

> res
array([array([0, 1, 2]), array([0, 1, 2, 3])], dtype=np.ndarray)

有没有办法做到这一点?

【问题讨论】:

  • 这不是串联的。那是一个包含数组的对象数组,一个混蛋列表。
  • 为什么要将这些数组合二为一?与列表相比,它有什么优势?

标签: python numpy


【解决方案1】:

考虑到答案Merge two numpy array's of different shape into a single array,您可以使用 numpy 模块中的函数 concatenate

a = np.arange(3)
b = np.arange(4)
c = np.concatenate((a, b))

【讨论】:

  • 这个结果是array([0, 1, 2, 0, 1, 2, 3]),而不是array([array([0, 1, 2]), array([0, 1, 2, 3])], dtype=np.ndarray)
  • 大概是这样c = np.array([a,b], dtype=object) ?
猜你喜欢
  • 2018-03-10
  • 1970-01-01
  • 1970-01-01
  • 2019-08-26
  • 2016-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-10-07
相关资源
最近更新 更多