Pandalar: serileri değere göre filtreleme
Bir panda serisindeki değerleri filtrelemek için aşağıdaki yöntemleri kullanabilirsiniz:
Yöntem 1: Değerleri tek bir koşula göre filtreleme
#filter for values equal to 7 my_series. loc [ lambda x:x == 7]
Yöntem 2: “OR” Koşulunu Kullanarak Değerleri Filtreleme
#filter for values less than 10 or greater than 20 my_series. loc [ lambda x: (x < 10) | (x > 20)]
Yöntem 3: “AND” Koşulunu Kullanarak Değerleri Filtreleme
#filter for values greater than 10 and less than 20 my_series. loc [ lambda x: (x > 10) & (x < 20)]
Yöntem 4: Listede yer alan değerleri filtreleyin
#filter for values that are equal to 4, 7, or 23 my_series[my_series. isin ([4, 7, 23])]
Bu eğitimde her yöntemin aşağıdaki panda serileriyle pratikte nasıl kullanılacağı açıklanmaktadır:
import pandas as pd
#create pandas Series
data = pd. Series ([4, 7, 7, 12, 19, 23, 25, 30])
#view pandas Series
print (data)
0 4
1 7
2 7
3 12
4 19
5 23
6 25
7 30
dtype: int64
Örnek 1: Değerleri bir koşula göre filtreleme
Aşağıdaki kod, pandalar serisinin 7’ye eşit değerler için nasıl filtreleneceğini gösterir:
#filter for values equal to 7 data. loc [ lambda x:x == 7] 1 7 2 7 dtype: int64
7’ye eşit olmayan değerleri de filtreleyebiliriz:
#filter for values not equal to 7 data. loc [ lambda x:x != 7] 0 4 3 12 4 19 5 23 6 25 7 30 dtype: int644
Örnek 2: “OR” koşulunu kullanarak değerleri filtreleme
Aşağıdaki kod, pandalar serisinin 10’dan küçük veya 20’den büyük değerler için nasıl filtreleneceğini gösterir:
#filter for values less than 10 or greater than 20 data. loc [ lambda x: (x < 10) | (x > 20)] 0 4 1 7 2 7 5 23 6 25 7 30 dtype: int64
Örnek 3: “AND” koşulunu kullanarak değerleri filtreleme
Aşağıdaki kod, pandalar serisinin 10’dan büyük ve 20’den küçük değerler için nasıl filtreleneceğini gösterir:
#filter for values greater than 10 and less than 20 data. loc [ lambda x: (x > 10) & (x < 20)] 3 12 4 19 dtype: int64
Örnek 4: listede yer alan değerleri filtreleme
Aşağıdaki kod, bir listede yer alan değerler için pandalar serisinin nasıl filtreleneceğini gösterir:
#filter for values that are equal to 4, 7, or 23 data[data. isin ([4, 7, 23])] 0 4 1 7 2 7 5 23 dtype: int64
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?