Numpy dizisi nasıl filtrelenir (4 örnek)
Bir NumPy dizisinin değerlerini filtrelemek için aşağıdaki yöntemleri kullanabilirsiniz:
Yöntem 1: Değerleri tek bir koşula göre filtreleme
#filter for values less than 5 my_array[my_array < 5 ]
Yöntem 2: “OR” Koşulunu Kullanarak Değerleri Filtreleme
#filter for values less than 5 or greater than 9 my_array[(my_array < 5 ) | (my_array > 9 )]
Yöntem 3: “AND” Koşulunu Kullanarak Değerleri Filtreleme
#filter for values greater than 5 and less than 9 my_array[(my_array > 5 ) & (my_array < 9 )]
Yöntem 4: Listede yer alan değerleri filtreleyin
#filter for values that are equal to 2, 3, 5, or 12 my_array[np. in1d (my_array, [2, 3, 5, 12])]
Bu eğitimde her yöntemin aşağıdaki NumPy dizisiyle pratikte nasıl kullanılacağı açıklanmaktadır:
import numpy as np
#create NumPy array
my_array = np. array ([1, 2, 2, 3, 5, 6, 7, 10, 12, 14])
#view NumPy array
my_array
array([ 1, 2, 2, 3, 5, 6, 7, 10, 12, 14])
Örnek 1: Değerleri bir koşula göre filtreleme
Aşağıdaki kod, NumPy dizisi değerlerinin tek bir koşula göre nasıl filtreleneceğini gösterir:
#filter for values less than 5 my_array[(my_array < 5 )] array([1, 2, 2, 3]) #filter for values greater than 5 my_array[(my_array > 5 )] array([6,7,10,12,14]) #filter for values equal to 5 my_array[(my_array == 5 )] array([5])
Örnek 2: “OR” koşulunu kullanarak değerleri filtreleme
Aşağıdaki kod, NumPy dizisinin değerlerinin “VEYA” koşulu kullanılarak nasıl filtreleneceğini gösterir:
#filter for values less than 5 or greater than 9 my_array[(my_array < 5 ) | (my_array > 9 )] array([ 1, 2, 2, 3, 10, 12, 14])
Bu filtre, 5’ten küçük veya 9’dan büyük NumPy dizisi değerlerini döndürür.
Örnek 3: “AND” koşulunu kullanarak değerleri filtreleme
Aşağıdaki kod, NumPy dizisinin değerlerinin “AND” koşulu kullanılarak nasıl filtreleneceğini gösterir:
#filter for values greater than 5 and less than 9 my_array[(my_array > 5 ) & (my_array < 9 )] array([6, 7])
Bu filtre, NumPy dizisinden 5’ten büyük ve 9’dan küçük değerleri döndürür.
Örnek 4: listede yer alan değerleri filtreleme
Aşağıdaki kod, bir listede bulunan NumPy dizi değerlerinin nasıl filtreleneceğini gösterir:
#filter for values that are equal to 2, 3, 5, or 12 my_array[np. in1d (my_array, [2, 3, 5, 12])] array([ 2, 2, 3, 5, 12])
Bu filtre yalnızca 2, 3, 5 veya 12’ye eşit değerleri döndürür.
Not : NumPy in1d() işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde Python’da diğer yaygın filtreleme işlemlerinin nasıl gerçekleştirileceği açıklanmaktadır:
Belirli bir dize içeren Pandas DataFrame satırları nasıl filtrelenir
Pandas DataFrame’i birden çok koşulda filtreleme
Pandas DataFrame’de “DEĞİL” filtresi nasıl kullanılır?