Pandalar: başka bir sütuna dayalı olarak sütun değerini çıkarın
Başka bir sütundaki değere dayalı olarak bir sütundaki değeri çıkarmak için pandalarda query() işlevini kullanabilirsiniz.
Bu işlev aşağıdaki temel sözdizimini kullanır:
df. query (" team=='A' ")[" points "]
Bu özel örnek, her değeri takım sütununun A’ya eşit olduğu puan sütunundan çıkaracaktır.
Aşağıdaki örnekler, bu sözdiziminin pratikte aşağıdaki pandalar DataFrame ile nasıl kullanılacağını gösterir:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'], ' points ': [11, 28, 10, 26, 6, 25, 29, 12]}) #view DataFrame print (df) team position points 0 AG 11 1 AG 28 2 AF10 3AF 26 4 BG 6 5 BG 25 6 BF 29 7 BF 12
Örnek 1: Karşılanan bir koşula göre sütun değerlerini çıkarma
Aşağıdaki kod, takım sütunu değerinin “A”ya eşit olduğu noktalar sütunundan her bir değerin nasıl çıkarılacağını gösterir:
#extract each value in points column where team is equal to 'A' df. query (" team=='A' ")[" points "] 0 11 1 28 2 10 3 26 Name: points, dtype: int64
Bu işlev, takım sütunundaki karşılık gelen değerin “A”ya eşit olduğu puan sütunundaki dört değeri döndürür.
Örnek 2: Karşılanan birçok koşuldan birine göre sütun değerlerini çıkarın
Aşağıdaki kod, takım sütunu değerinin “A”ya eşit olduğu veya konum sütunu değerinin “G”ye eşit olduğu noktalar sütunundan her bir değerin nasıl çıkarılacağını gösterir:
#extract each value in points column where team is 'A' or position is 'G' df. query (" team=='A' | position=='G' ")[" points "] 0 11 1 28 2 10 3 26 4 6 5 25 Name: points, dtype: int64
Bu işlev, takım sütunundaki karşılık gelen değerin “A”ya eşit olduğu veya konum sütunundaki değerin “G”ye eşit olduğu puan sütunundaki altı değeri döndürür.
Örnek 3: Karşılanan birden fazla koşula göre sütun değerlerini çıkarın
Aşağıdaki kod, takım sütunu değerinin “A”ya ve konum sütunu değerinin “G”ye eşit olduğu noktalar sütunundan her bir değerin nasıl çıkarılacağını gösterir:
#extract each value in points column where team is 'A' and position is 'G' df. query (" team=='A' & position=='G' ")[" points "] 0 11 1 28 Name: points, dtype: int64
Bu işlev, takım sütunundaki karşılık gelen değerin “A” ya ve konum sütunundaki değerin “G”ye eşit olduğu puan sütunundaki iki değeri döndürür.
Ek kaynaklar
Aşağıdaki eğitimlerde pandalarda diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
Pandalar: koşula göre sütunların nasıl seçileceği
Pandalar: birden çok koşula dayalı satırları silin
Pandalar: sütun değerlerini başka bir DataFrame’e göre güncelleyin