【发布时间】:2020-10-30 21:02:01
【问题描述】:
是否有任何有效的 numpy 方法来执行以下操作:
假设我有一些大小为R X C 的矩阵M。现在假设我有另一个矩阵
E 的形状为 R X a(其中 a 只是一些常量 a < C),其中包含行索引
M(和 -1 用于填充,即 E 的每个元素都在 {-1, 0, .., R-1} 中)。例如,
M=array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
E = array([[ 0, 1],
[ 2, -1],
[-1, 0]])
现在,给定这些矩阵,我想生成第三个矩阵P,P 的第 i 行将
包含以下行的总和 M :E[i,:]。在示例中,P 将是,
P[0,:] = M[0,:] + M[1,:]
P[1,:] = M[2,:]
P[2,:] = M[0,:]
是的,使用循环执行此操作非常简单明了,我想知道是否有
任何花哨的 numpy 方法来提高效率(假设我想用大矩阵来做,
例如,200 X 200。
谢谢!
【问题讨论】:
-
E中的每行能否有 2 个或更多-1?