【发布时间】:2020-10-12 05:38:44
【问题描述】:
我有一个二维 numpy 数组 A 和一个元组列表 tup,看起来像:
A = np.array(range(1,11)).reshape(-3,2)
A
array([[ 1, 2],
[ 3, 4],
[ 5, 6],
[ 7, 8],
[ 9, 10]])
tup = [(0,),
(1,),
(0, 1),
(0, 0),
(1, 1),
(0, 1, 1),
(1, 1, 1),
(0, 0, 0),
(0, 0, 1)]
我希望创建一个新的np.array 为result,其列是A 列的乘积:要在乘积中使用的列的索引由元组中的值给出。例如,上面应该产生:
[[1,3,5,7,9],
[2,4,6,8,10],
[2,12,30,56,90],
[1,9,25,49,81],
[4,16,36,64,100],
[4,48,180,448,900],
...]]
上面的行对应的位置:
[A[0],
A[1],
A[0]*A[1],
A[0]*A[0],
A[1]*A[1],
A[0]*A[1]*A[1],
A[1]*A[1]*A[1],
...]
元组可以是任意长度 >= 1。到目前为止,我已经尝试遍历 tup 的每个索引并遍历每个元组的条目数,但我很难写出给定的产品每个产品的术语数因不同的迭代而异。非常感谢任何帮助或指导!略微偏爱基础 Python 和/或 Numpy 解决方案。
【问题讨论】:
标签: python numpy multidimensional-array