Pandalar: query() işlevinde değişken nasıl kullanılır?


Pandalarda query() işlevini kullanmak ve bir değişken adına referans vermek için aşağıdaki sözdizimini kullanabilirsiniz:

 df. query (' team == @team_name ')

Bu özel sorgu, takım sütununun takım_adı adı verilen değişkende depolanan değere eşit olduğu pandas DataFrame’deki satırları arar.

Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.

Örnek: Pandalar sorgusunda bir değişken nasıl kullanılır?

Çeşitli basketbol oyuncuları hakkında bilgi içeren aşağıdaki pandalar DataFrame’e sahip olduğumuzu varsayalım:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B', 'B', 'C', 'C', 'C', 'C '],
                   ' position ':['G', 'G', 'F', 'G', 'F', 'F', 'F', 'G', 'G', 'F', 'F'],
                   ' points ': [22, 25, 24, 39, 34, 20, 18, 17, 20, 19, 22]})

#view DataFrame
print (df)

   team position points
0 AG 22
1 AG 25
2 AF 24
3 BG 39
4 BF 34
5 BF 20
6 BF 18
7 GC 17
8 GC 20
9 CF 19
10 CF 22

Şimdi takım sütunundaki değerin C’ye eşit olduğu satırları bulmak istediğimizi varsayalım.

“C”ye eşit olan takım_adı adlı bir değişken oluşturmak için aşağıdaki sözdizimini kullanabiliriz, ardından bu değişkene query() işlevinde başvuruda bulunabiliriz:

 #specify team name to search for
team_name = ' C '

#query for rows where team is equal to team_name
df. query (' team == @team_name ')

        team position points
7 C G 17
8 C G 20
9 C F 19
10 C F 22

query() fonksiyonunun, takım sütunundaki değerin C’ye eşit olduğu tüm satırları döndürdüğünü unutmayın.

Ayrıca istersek query() fonksiyonunda birden fazla değişkene referans verebileceğimizi de unutmayın.

Örneğin, aşağıdaki kod, takım sütunundaki değerin takım_A adı verilen bir değişkenin veya takım_C adı verilen bir değişkenin değerine eşit olduğu tüm satırları döndürmek için query() işlevinin nasıl kullanılacağını gösterir:

 #create two variables
team_A = ' A ' 
team_C = ' C '

#query for rows where team is equal to either of the two variables
df. query (' team == @team_A | team == @team_C ')

        team position points
0 A G 22
1 A G 25
2 A F 24
7 C G 17
8 C G 20
9 C F 19
10 C F 22

Sorgu, DataFrame’deki tüm satırları döndürür; burada takım, belirttiğimiz iki değişkenden birinde saklanan değerlere eşittir.

Not : Pandas query() işlevinin tam belgelerini burada bulabilirsiniz.

Ek kaynaklar

Aşağıdaki eğitimlerde pandalarda diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:

Pandalar: Dize uzunluğuna göre satırlar nasıl filtrelenir
Pandalar: Koşula göre satırlar nasıl silinir?
Pandalar: “GİRİŞ YOK” filtresi nasıl kullanılır?

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir