NumPy Dizi Arama

Dizi arama

Dizide bir değeri arayabilir (arama yapabilir) ve ardından bulduğunuz eşleşen indeksleri döner.

Diziyi aramak için where() yöntemi.

Örnek

Değer 4'nin indekslerini bulma:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 4, 4])
x = np.where(arr == 4)
print(x)

Örnek Çalıştırma

Bu örnekte bir tuple döner:(array([3, 5, 6],)

Yani değer 4, indeks 3, 5 ve 6'da bulunur.

Örnek

Çift sayısal değerlerin indekslerini bulma:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8])
x = np.where(arr%2 == 0)
print(x)

Örnek Çalıştırma

Örnek

Tek sayısal değerlerin indekslerini bulma:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7, 8])
x = np.where(arr%2 == 1)
print(x)

Örnek Çalıştırma

arama sıralama

adlı bir searchsorted() tarzı, bu yöntem dizide ikili arama yapar ve belirli bir değeri eklemek için arama sırasını korumak için hangi indeksi döner.

tanımak searchsorted() sıralı dizileri sıralamak için kullanılan yöntem.

Örnek

Değer 7'nin eklenmesi gereken indeksi bulma:

import numpy as np
arr = np.array([6, 7, 8, 9])
x = np.searchsorted(arr, 7)
print(x)

Örnek Çalıştırma

Örnek Açıklaması:Sıralama düzenini korumak için 7 numaralı sayıyı indeks 1'e eklemelisiniz.

Bu yöntem soldan başlayarak arama yapar ve 7 numaralı sayı bir sonraki değerden büyük olmayacak ilk indeksi döner.

Sağdan Arama

Varsayılan olarak, en soldaki indeksi döner, ancak verebiliriz side='right'en sağdaki indeksi dönmek için.

Örnek

Sağdan başlayarak 7 numaralı değeri eklemek için indeksi bulma:

import numpy as np
arr = np.array([6, 7, 8, 9])
x = np.searchsorted(arr, 7, side='right')
print(x)

Örnek Çalıştırma

Örnek Açıklaması:Sıralama düzenini korumak için 7 numaralı sayıyı indeks 2'ye eklemelisiniz.

Bu yöntem sağdan başlayarak arama yapar ve 7 numaralı sayı bir sonraki değerden küçük olmayacak ilk indeksi döner.

Çoklu Değer

Birden fazla değer aramak için belirli değerlerin sahip olduğu bir dizi kullanın.

Örnek

Değer 2, 4 ve 6'nın eklenmesi gereken indeksi bulma:

import numpy as np
arr = np.array([1, 3, 5, 7])
x = np.searchsorted(arr, [2, 4, 6])
print(x)

Örnek Çalıştırma

Dönüş değeri bir dizi:[1 2 3] Üç indeks içerir, bunlar sırayı korumak için orijinal dizine 2, 4, 6 numaralı indeksleri ekleyecektir.