np.isin判斷陣列元素在另一陣列中是否存在
阿新 • • 發佈:2018-11-08
np.isin用法
覺得有用的話,歡迎一起討論相互學習~Follow Me
np.isin(a,b)
用於判定a中的元素在b中是否出現過,如果出現過返回True,否則返回False,最終結果為一個形狀和a一模一樣的陣列。- 但是當引數invert被設定為True時,情況恰好相反,如果a中元素在b中沒有出現則返回True,如果出現了則返回False.
import numpy as np
# 這裡使用reshape是為了驗證是否對高維陣列適用,返回一個和a形狀一樣的陣列
a=np.array([1,3,7]).reshape(3,1)
b=np.arange( 9).reshape(3,3)
# a 中的元素是否在b中,如果在b中顯示True
Np_No_invert=np.isin(a, b, invert=False)
print("Np_No_invert\n",Np_No_invert)
# a 中的元素是否在b中,如果設定了invert=True,則情況恰恰相反,即a中元素在b中則返回False
Np_invert=np.isin(a, b, invert=True)
print("Np_invert\n",Np_invert)
# Np_No_invert
# [[ True]
# [ True]
# [ True]]
# Np_invert
# [[False]
# [False]
# [False]]