我想用这段代码堆叠数组。
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([7, 8])
np.stack((a, b), axis=-1)
但它返回
ValueError:所有输入数组必须具有相同的形状错误。
我希望输出是:
array([[[1, 2, 3], 7],
[[4, 5, 6], 8]])
我认为这不是一个有效的 numpy 数组。您可以通过让数组的 dtype 为 an object
(可以是任何东西,包括不规则的序列,例如您的)来做到这一点。
data = [[[1, 2, 3], 7], [[4, 5, 6], 8]]
ar = np.array(data, dtype=object)
要构建data
,您可以执行以下操作:
a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([7, 8])
data = [[_a, _b] for _a, _b in zip(a, b)]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句