認為
Main_Array = np.array([[1,2], [3,4], [4,5], [5,6]])
進一步假設
Object_Array = np.array([[1,2]])
我想要一個函式 st
f(Object_Array, Main_Array) = 0
即如果我知道它在 Main_Array 中,則為 Objective_Array 的索引。我似乎無法使用,np.where()因為它不是矢量化的。它不尋找陣列,當我在那里嘗試時,我得到了奇怪的結果。
非常感謝!
uj5u.com熱心網友回復:
使用list.index:
Main_Array = [[1,2], [3,4], [4,5], [5,6]]
Object_Array = [1,2]
Main_Array.index(Object_Array) # Outputs 0
uj5u.com熱心網友回復:
在多次嘗試后回答我自己的問題,以下代碼有效:
index = np.where(np.all(Main_Array == Objective_Array, axis = 1))
然后達到以下結果
index == [[0]]
并且可以通過以下方式獲得所需的值:
index[0][0] == 0
如果沒有匹配項,它將給出:
index == [[]]
因此我們可以使用 len(index[0]) 作為陳述句的條件,因為 Main_Array 陳述句中的 Objective_Array 通常會導致誤報。如果 Object_Array 不在主陣列中,我們將有:
len(index[0]) == 0
如果它在陣列中,我們得到:
len(index[0]) > 0
在我們的特殊情況下,我們有:
len(index[0]) == 1
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/395633.html
上一篇:給定X的元素對陣列的磁區
