あなたが使用することができます。たとえばA.
内のBの値210、あなたは秩序を維持を気にしている場合 - 一般的なケースでは
np.searchsorted(A,B)
、A
& B
がソートされていない配列である場合、あなたはそのように、np.searchsorted
でsorter
オプションにもたらすことができる -
sort_idx = A.argsort()
out = sort_idx[np.searchsorted(A,B,sorter = sort_idx)]
私は自分の好きなものをbroadcasting
に追加して、一般的なケースを解決するためのミックスを作成します -
np.nonzero(B[:,None] == A)[1]
サンプルラン -
In [125]: A
Out[125]: array([ 7, 5, 1, 6, 10, 9, 8])
In [126]: B
Out[126]: array([ 1, 10, 7])
In [127]: sort_idx = A.argsort()
In [128]: sort_idx[np.searchsorted(A,B,sorter = sort_idx)]
Out[128]: array([2, 4, 0])
In [129]: np.nonzero(B[:,None] == A)[1]
Out[129]: array([2, 4, 0])
これは私たちが順番を気にしないと仮定します。 [1、10、7]と同じB = [1,7,10]の結果を返します。 (OPの質問はいずれにせよ指定されていません) – DSM
@DSM参考になったコメント!ありがとう!ジェネリックにしました。 – Divakar