python – Numpy Dot两个2-d数组的产品,在numpy中获得3-d数组
发布时间:2020-12-16 23:42:53 所属栏目:Python 来源:网络整理
导读:对不起,标题写得很糟糕.我试图并行化我的代码的一部分,并陷入一个点产品.我正在寻找一种有效的方法来做下面的代码,我确信有一个简单的线性代数解决方案,但我很困惑: puy = np.arange(8).reshape(2,4)puy2 = np.arange(12).reshape(3,4)print puy,'n'print
对不起,标题写得很糟糕.我试图并行化我的代码的一部分,并陷入一个点产品.我正在寻找一种有效的方法来做下面的代码,我确信有一个简单的线性代数解决方案,但我很困惑:
puy = np.arange(8).reshape(2,4) puy2 = np.arange(12).reshape(3,4) print puy,'n' print puy2.T zz = np.zeros([4,2,3]) for i in range(4): zz[i,:,:] = np.dot(np.array([puy[:,i]]).T,np.array([puy2.T[i,:]])) 解决方法
一种方法是使用
np.einsum ,它允许您指定您希望发生在索引上的内容:
>>> np.einsum('ik,jk->kij',puy,puy2) array([[[ 0,0],[ 0,16,32]],[[ 1,5,9],[ 5,25,45]],[[ 4,12,20],[12,36,60]],[[ 9,21,33],[21,49,77]]]) >>> np.allclose(np.einsum('ik,puy2),zz) True (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Python加pyGame实现的简单拼图游戏实例
- 在Flask中使用SQLAlchemy模型
- python – 带有init连接的数据库上的sqlalchemy的Utf-8
- 超线程技术(Hyper—Threading Technology,HTT)
- python-如何使用sharex = True在catplot(kind =’viol
- 使用Python中的单维数组进行多维数组索引
- 通过索引在python中使用replace()方法
- Python functools.namedtuple
- Python中正则表达式的巧妙使用
- Python Django:将dumpdata用于具有m2m字段和mySql的单个模