numpy-比较两个2D数组中的元素并替换值

时间:2018-07-12 21:21:12

标签: python arrays numpy replace conditional

我对这个问题有特定的要求。我需要它既简单又快速。

我的问题: 我有两个2D数组,我需要根据条件用2.数组中的值替换1.数组中的值。也就是说,如果1.数组中x,y位置的元素小于2.数组中x,y位置的元素,则将1.数组中的元素替换为2.数组中的元素。

我尝试了什么但没用:

import numpy as np
arr = np.random.randint(3,size=(2, 2))
arr2 = np.random.randint(3,size=(2, 2))
print(arr)
print(arr2)

arr[arr<arr2]=arr2 # Doesnt work.

这会引发TypeError:

TypeError:NumPy布尔数组索引分配需要0或1维输入,输入具有2维

我看到,可以对列或行进行迭代,但是我相信无需迭代即可完成。

预先感谢

0 个答案:

没有答案