【发布时间】:2021-11-29 08:48:55
【问题描述】:
我有以下数组
import numpy as np
single_array =
[[ 1 80 80 80]
[ 2 80 80 89]
[ 3 52 50 90]
[ 4 39 34 54]
[ 5 37 47 32]
[ 6 42 42 27]
[ 7 42 52 27]
[ 8 38 33 28]
[ 9 42 37 42]]
并希望在此 single_array 中创建另一个包含 2 行的所有唯一总和的数组,以便 1+2 和 2+1 被视为重复项并且仅包含一次。
首先我想更新数组的第 0 列以将每个值乘以 10(这样我就可以识别相应的匹配项),然后我想将每 2 行相加并将它们附加到新数组中。
输出应如下所示:
double_array=
[[12 160 160 169]
[13 132 130 170]
[14 119 114 134]
...
[98 80 70 70]]
我可以使用 itertools.combinations 获得一个具有两个唯一组合的 3D 数组,然后在相应的第 3 轴上添加行吗?
【问题讨论】:
标签: arrays python-3.x numpy