亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python - 在數組中查找對應關系

Python - 在數組中查找對應關系

一只萌萌小番薯 2022-07-19 15:53:24
我有一個 3D 坐標的大型 2D 數組 (3x100,000) 和一個具有某些未排序坐標的第二個 1D 數組。我想找到第二個數組中包含的坐標的所有點一個例子:mat1 = np.array([[1,2,3],[1,2,5],[2,3,6],[10,11,12],[20,2,3]]) mat2 = np.array([1,2,3,6])所以在這里我需要獲取 0 和 2 的索引。我需要在大約 100,000 個坐標上找到每個對應關系。Python中有一個特定的函數來完成這項工作嗎?總結一下我的情況:https://i.stack.imgur.com/L4nYx.png
查看完整描述

1 回答

?
FFIVE

TA貢獻1797條經驗 獲得超6個贊

最簡單的方法是np.isin-


# a,b are input arrays - mat1,mat2 respectively

In [7]: np.flatnonzero(np.isin(a,b).all(1))

Out[7]: array([0, 2])

另一個與np.searchsorted-


In [19]: idx = np.searchsorted(b,a)


In [20]: idx[idx==len(b)] = 0


In [21]: np.flatnonzero((b[idx]==a).all(1))

Out[21]: array([0, 2])

如果b未按排序順序,請使用np.argsort(b)as sorterarg 和np.searchsorted. More info.


查看完整回答
反對 回復 2022-07-19
  • 1 回答
  • 0 關注
  • 95 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號