小编LED*_*LED的帖子

矩阵乘法:将矩阵的每一行乘以 Python 中的另一个二维矩阵

我试图从这个矩阵乘法中删除循环(并了解更多关于一般优化代码的信息),我想我需要某种形式的np.broadcastingor np.einsum,但是在阅读它们之后,我仍然不确定如何使用它们我的问题。

A = np.array([[1, 2, 3, 4, 5],
         [6, 7, 8, 9, 10],
         [11,12,13,14,15]])
#A is a 3x5 matrix, such that the shape of A is (3, 5) (and A[0] is (5,))

B = np.array([[1,0,0],
         [0,2,0],
         [0,0,3]])
#B is a 3x3 (diagonal) matrix, with a shape of (3, 3)

C = np.zeros(5)
for i in range(5):
    C[i] = np.linalg.multi_dot([A[:,i].T, B, A[:,i]])

#Each row of matrix math is [1x3]*[3x3]*[3x1] to become a scaler value in each row …
Run Code Online (Sandbox Code Playgroud)

python numpy matrix numpy-einsum array-broadcasting

5
推荐指数
1
解决办法
1471
查看次数

旋转现有的 matplotlib 标记?

我知道这个答案,是否可以控制 matplotlib 标记方向?和标记文档,但是是否可以采用现有的 matplotlib 标记符号(非正多边形)并旋转它?

具体来说,我想将细菱形符号(“d”)旋转 90 度,使其长轴水平。

python matplotlib

3
推荐指数
1
解决办法
3589
查看次数