Python中文
首页
教程
问答
标签
搜索
登录
注册
是否有一个numpy/scipy点积,只计算结果的对角线项?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>假设有两个numpy数组:</p> <pre><code>> A, A.shape = (n,p) > B, B.shape = (p,p) </code></pre> <p>通常p是一个较小的数(p<;=200),而n可以任意大。</p> <p>我正在做以下工作:</p> <pre><code>result = np.diag(A.dot(B).dot(A.T)) </code></pre> <p>如您所见,我只保留了n个对角线项,但是有一个中间(nxn)数组,从这个数组中只保留了对角线项。</p> <p>我想要一个像diag_dot()这样的函数,它只计算结果的对角线项,而不分配完整的内存。</p> <p>其结果是:</p> <pre><code>> result = diag_dot(A.dot(B), A.T) </code></pre> <p>是否有这样一个预先定义的功能,并且可以在不需要分配中间(n x n)数组的情况下高效地完成这项工作?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>避免建造大型中间阵列的行人回答是:</p> <pre><code>result=np.empty([n,], dtype=A.dtype ) for i in xrange(n): result[i]=A[i,:].dot(B).dot(A[i,:]) </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
得到媒体:缩略图url从rss源
6 回答
得到对数正态随机数给定log10均值和log10标准差
7 回答
得到工作,波斯特不
10 回答
得到左半积和右半积的绝对差最小的元素
9 回答
得到幻数错误?
4 回答
得到异常错误“线程中的异常-1(最有可能在解释器关闭期间引发)”,它使用Parami
7 回答
得到循环
10 回答
得到德语的语法变化
8 回答
得到我认为是好的结果,但还不够
3 回答
得到截断svd.transform()返回float16而不是float64
7 回答
得到所有不相交的集合的并集
7 回答
得到所有函数求值组合的矩阵
6 回答
得到扭曲延迟取消错误当使用刮痧时
3 回答
得到控制台.log使用Selenium python从Chrome输出一次,然后调用第二次为空
9 回答
得到操作系统环境通过NSSM运行Python
4 回答
得到数学方程中的表达式
9 回答
得到数据库结构属性
8 回答
得到整数的后三位
3 回答
得到整数的第n位精度
9 回答
得到最低落的reddit评论
5 回答