【发布时间】:2015-10-27 14:43:28
【问题描述】:
我需要替换一个 numpy 数组的元素,以验证一个条件的另一个 numpy 数组的最小值。请参阅以下最小示例:
arr = np.array([0, 1, 2, 3, 4])
label = np.array([0, 0, 1, 1, 2])
cond = (label == 1)
label[cond][np.argmin(arr[cond])] = 3
我希望这个标签现在是
array([0, 0, 3, 1, 2])
相反,我得到了
array([0, 0, 1, 1, 2])
这是numpy arrays are not updated with double slicing 已知事实的结果。
无论如何,我无法弄清楚如何以简单的方式重写上面的代码。有什么提示吗?
【问题讨论】: