Python 《努比》中有没有像《蒙面无敌》那样的蒙面无敌?
什么是等价物Python 《努比》中有没有像《蒙面无敌》那样的蒙面无敌?,python,numpy,mask,Python,Numpy,Mask,什么是等价物 masked_arr = np.ma.masked_max(arr, axis=(-1,-2)) 得到 [[[False True] [False False]]] # or an equivalent with -- and max value in place 从 我试过了 np.ma.max(arr, axis=(-1,-2)) 但它只返回一个类似np.max的值,而不是掩码。我该怎么做?就像numpy.ma.masked\u less一样,有一个numpy.m
masked_arr = np.ma.masked_max(arr, axis=(-1,-2))
得到
[[[False True]
[False False]]]
# or an equivalent with -- and max value in place
从
我试过了
np.ma.max(arr, axis=(-1,-2))
但它只返回一个类似np.max的值,而不是掩码。我该怎么做?就像
numpy.ma.masked\u less
一样,有一个numpy.ma.masked\u less
但是你想要numpy.ma.masked\u more\u equal
import numpy
x = numpy.array([
[0.54881350, 0.71518937],
[0.60276338, 0.54488318]
])
mask = numpy.ma.masked_greater_equal(x, x.max()).mask
print(mask)
我得到:
[[False True]
[False False]]
我认为你甚至不需要使用
np.ma
来实现这一点,你可以这样做
mask = np.isclose(x, x.max((-1, -2), keepdims = True))
记住使用np.isclose
而不是=
进行浮动。但是,
mask = x == x.max((-1, -2), keepdims = True)
如果您有整数或其他类型的
==
是安全的,则可以使用它。ahhh,我知道您使用keepdims
做了什么;真棒:)
mask = x == x.max((-1, -2), keepdims = True)