【发布时间】:2018-05-03 18:02:34
【问题描述】:
如何在 numpy python 中连接两个数组,方法是从第一个数组中获取第一列,从第二个数组中获取第一列,然后从第一列中获取第二列,从另一个中获取第二列,等等。那就是如果我有A=[a1 a2 a3] 和B=[b1 b2 b3]
我希望结果数组为[a1 b1 a2 b2 a3 b3]
【问题讨论】:
-
这显然不是串联,而是压缩。
-
@Olaf 在处理 NumPy 数组时,连接这个术语比压缩更流行。更准确地说,它是交错的。
-
如果这被认为是“太宽泛”了,真的很遗憾。
-
@Divakar:我故意使用了“zip-ping”这个词,因为这是一个 Python 标准函数,也应该适用于 NumPy 数组。对于 CV:OP 没有显示任何代码,也没有说明是否存在约束,例如禁止使用
zip。可惜它实际上得到了三个赞成票。它没有显示任何研究工作以及为什么不使用标准方法。 -
@Olaf 又是什么“标准方式”?
zip(A,B)?无论如何,任何其他压缩方式都会导致列表/元组输出。这不会给出数组输出,并且 OP 已经提到他们想要一个数组输出。将任何基于压缩的列表结果转换为数组的开销对于性能来说并不是一个好主意。这就是为什么压缩在 NumPy 领域不太流行的原因。
标签: python arrays python-3.x numpy