2D- A[:,3:] np.in1d, 1D- B , , 1D-, , TRUE zeros. :
A[:,3:][np.in1d(A[:,3:],B).reshape(A.shape[0],-1)] = 0
-
In [37]: A
Out[37]:
array([[ 1, 1, 10, 101, 102, 103, 0, 0],
[ 2, 2, 10, 102, 108, 0, 0, 0],
[ 3, 3, 11, 101, 102, 106, 107, 108]])
In [38]: np.in1d(A[:,3:],B)
Out[38]:
array([ True, False, False, False, False, False, True, False, False,
False, True, False, True, False, True], dtype=bool)
In [39]: np.in1d(A[:,3:],B).reshape(A.shape[0],-1)
Out[39]:
array([[ True, False, False, False, False],
[False, True, False, False, False],
[ True, False, True, False, True]], dtype=bool)
In [40]: A[:,3:][np.in1d(A[:,3:],B).reshape(A.shape[0],-1)] = 0
In [41]: A
Out[41]:
array([[ 1, 1, 10, 0, 102, 103, 0, 0],
[ 2, 2, 10, 102, 0, 0, 0, 0],
[ 3, 3, 11, 0, 102, 0, 107, 0]])
, A 1D-, np.in1d, . , A[:,3:], .flat, :
A[:,3:].flat[np.in1d(A[:,3:],B)] = 0
, A, .ravel() -
A.ravel()[np.in1d(A,B)] = 0
, .ravel() - , , .flat , .