【发布时间】:2014-11-18 23:29:32
【问题描述】:
当我们有:
array 1: A, shape (49998,3,3)
array 2: B, shape (3, 49998)
我想将它们的子数组相乘得到
array 3: C, shape(3,49998)
我使用生成器:
def genC(A,B):
for a,b in itertools.izip(A,B.T):
c=np.dot(a,b)
yield c.T[0]
C=np.array([c for c in genC()]).T
那么我如何在没有 for 循环的情况下在 A、B 内部进行数组乘法以获得数组 C?
我试图使用np.tensordot,但我无法得到它
注意:
这只是基本示例,对于我拥有的原始数据中的一些测试 cos
4*3*37 数组 A(500 000,3,3) B(3,500 000)
to do, and for loop sems for me not pythonic way xD
【问题讨论】:
标签: python arrays numpy dot-product