我正在尝试在两个2D numpy数组上执行此功能:
第1步:查找np.argmax(b, axis=1)
索引。
第2步:查找b[indices] > a[indices]
第3步:返回2D布尔数组中的值。
我试过了:
np.where((b>a)&np.argmax(b,axis=1).reshape((3,-1)), True, False)
但没有骰子。有什么想法吗?
提前致谢。
答案 0 :(得分:3)
根据您的意见,我最了解的是:
output = (np.max(b,axis=1)[...,None] == b) & (b > a)
我们利用Numpy广播来做“b
”部分的最大行:
np.max(b,axis=1)[...,None] == b
或许更清楚:
np.max(b,axis=1)[...,np.newaxis] == b