Python numpy数组中的屏蔽值

Python numpy数组中的屏蔽值,python,numpy,Python,Numpy,我有福勒。numpy代码: mask_cntr = np.copy(map_ccodes) mask_cntr[mask_cntr == cntr] = 1.0 mask_cntr[mask_cntr != 1.0] = 0.0 这里,我将2D数组map\u ccodes复制到mask\u cntr,并将该数组中等于cntr的值分配到1.0,将所有其他值分配到0.0 在numpy中有没有更快、更具Python风格的方法呢?试试看 mask_cntr = 1.0*(map_ccodes==cnt

我有福勒。numpy代码:

mask_cntr = np.copy(map_ccodes)
mask_cntr[mask_cntr == cntr] = 1.0
mask_cntr[mask_cntr != 1.0] = 0.0
这里,我将2D数组
map\u ccodes
复制到
mask\u cntr
,并将该数组中等于
cntr
的值分配到
1.0
,将所有其他值分配到
0.0

在numpy中有没有更快、更具Python风格的方法呢?

试试看

mask_cntr = 1.0*(map_ccodes==cntr)
我假设您的代码中的
cntr==1

为什么你需要一个单独的面具呢?您始终可以在任何位置使用
map\u ccodes==cntr
参数…

函数接受条件并根据条件为真或假返回输出:

np.where(mask_cntr == cntr, 1.0, 0.0)