我有一个值为0和1的2d np数组,称为t。我还有另一个2d数组,它使用称为q的随机值初始化。它们大小相同。我想更新q,以便在每个地方t为0,q都更改为-np.inf 我相信以下循环有效
for i in range(0, np.shape(t)[0]):
for j in range(0, np.shape(t)[1]):
if t[i, j] == 0:
q[i, j] = -np.inf
但是我想知道是否有使用numpy的更有效的解决方案。
答案 0 :(得分:0)
使用np.isclose
是更好的方法,例如
q[np.isclose(t, 0.0)] = np.NINF