Paghahanap ng Array ng NumPy
- Nakaraang Pahina Paghihiwalay ng Array ng NumPy
- Susunod na Pahina Pagbabago ng Pagkakabanggit ng Array ng NumPy
搜索数组
您可以在数组中搜索(检索)某个值,然后返回获得匹配的索引。
要搜索数组,请使用 where()
方法。
Sample
查找值为 4 的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 4, 4]) x = np.where(arr == 4) print(x)
上例会返回一个元组:(array([3, 5, 6],)
意思就是值 4 出现在索引 3、5 和 6。
Sample
查找值为偶数的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 0) print(x)
Sample
查找值为奇数的索引:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) x = np.where(arr%2 == 1) print(x)
搜索排序
有一个名为 searchsorted()
的方法,该方法在数组中执行二进制搜索,并返回将在其中插入指定值以维持搜索顺序的索引。
假定 searchsorted()
Ang paraan na ito ay ginagamit para sa pagayos ng array.
Sample
Hanapin ang indeks kung saan dapat i-insert ang halaga 7:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7) print(x)
Halimbawa ng Paliwanag:Dapat i-insert ang bilang 7 sa indeks 1 upang mapanatili ang pagkakasunod-sunod.
Ang paraan na ito ay nagsisimula mula sa kaliwa, at ibinabalik ang unang indeks kung saan ang bilang 7 ay hindi na mas mataas kaysa susunod na halaga.
Magsimula sa Kanan
Sa pamamagitan ng default, ibinabalik ang pinakamalapit na indeks sa kanan, ngunit maaari naming magbigay ng side='right'
upang ibalik ang pinakamalapit na indeks sa kanan.
Sample
Hanapin ang indeks kung saan dapat i-insert ang halaga 7 mula sa kanan:
import numpy as np arr = np.array([6, 7, 8, 9]) x = np.searchsorted(arr, 7, side='right') print(x)
Halimbawa ng Paliwanag:Dapat i-insert ang bilang 7 sa indeks 2 upang mapanatili ang pagkakasunod-sunod.
Ang paraan na ito ay nagsisimula mula sa kanan, at ibinabalik ang unang indeks kung saan ang bilang 7 ay hindi na mas mababa sa susunod na halaga.
Maraming Halaga
Para hanapin ang ilang halaga, gamitin ang array na may ilang natukoy na halaga.
Sample
Hanapin ang indeks kung saan dapat i-insert ang halaga 2, 4 at 6:
import numpy as np arr = np.array([1, 3, 5, 7]) x = np.searchsorted(arr, [2, 4, 6]) print(x)
Ang ibinabalik na halaga ay isang array:[1 2 3]
May tatlong indeks, kung saan ang 2, 4, 6 ay i-insert sa orihinal na array upang mapanatili ang pagkakasunod-sunod.
- Nakaraang Pahina Paghihiwalay ng Array ng NumPy
- Susunod na Pahina Pagbabago ng Pagkakabanggit ng Array ng NumPy