gpt4 book ai didi

python - numpy:创建包含条目 c_ i * C_{i} 的矩阵的快速方法

转载 作者:太空宇宙 更新时间:2023-11-04 01:31:23 26 4
gpt4 key购买 nike

我正在寻找一种从给定向量 b_i 和另一个向量创建新矩阵 A_{ij} 的快速方法矩阵 C_{ij}。新矩阵的组件应具有以下形式

A_{ij} = b_i * C_{ij}.

到目前为止我使用的是dot(diag(b), C),但是点积自然有很多乘法为零,效率很低。有没有更好的办法?

最佳答案

使用 *,具有适当广播的元素级产品:

>>> b = array([1,2,3])
>>> C = arange(9).reshape(3,3)
>>> dot(diag(b), C)
array([[ 0, 1, 2],
[ 6, 8, 10],
[18, 21, 24]])
>>> atleast_2d(b).T * C
array([[ 0, 1, 2],
[ 6, 8, 10],
[18, 21, 24]])

atleast_2d(b).T(或 b.reshape(-1,1))将向量 b reshape 为列向量.

关于python - numpy:创建包含条目 c_ i * C_{i} 的矩阵的快速方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13683804/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com