Pandas dataframe'de en yakın değer nasıl bulunur (örnekle)


Belirli bir sütunda belirtilen değere en yakın değeri içeren pandas DataFrame’deki satırı bulmak için aşağıdaki temel sözdizimini kullanabilirsiniz:

 #find row with closest value to 101 in points column
df_closest = df. iloc [(df[' dots ']- 101 ). abs (). argsort ()[:1]]

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

Örnek: Pandas DataFrame’de en yakın değeri bulun

Farklı basketbol takımları tarafından atılan puanların sayısını içeren aşağıdaki panda DataFrame’e sahip olduğumuzu varsayalım:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Nets', 'Hawks', 'Kings', 'Spurs', 'Cavs'],
                   ' points ': [99, 100, 96, 104, 89, 93]})

#view DataFrame
print (df)

    team points
0 Mavs 99
1 Nets 100
2 Hawks 96
3 Kings 104
4 Spurs 89
5 Cavs 93

Şimdi DataFrame’in nokta sütununda 101’e en yakın değeri içeren satırını seçmek istediğimizi varsayalım.

Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:

 #find row with closest value to 101 in points column
df_closest = df. iloc [(df[' dots ']- 101 ). abs (). argsort ()[:1]]

#view results
print (df_closest)

   team points
1 Nets 100

Sonuçta Nets’in puan sütununda 101’e en yakın değere sahip olduğunu görebiliyoruz.

Panda DataFrame’deki satırın tamamı yerine yalnızca en yakın değerin kendisini görüntülemek için tolist() işlevini de kullanabileceğimizi unutmayın:

 #display value closest to 101 in the points column
df_closest[' points ']. tolist ()

[100]

Ayrıca, birden fazla en yakın değeri bulmak için argsort() işlevinden sonra değeri değiştirebileceğimizi unutmayın.

Örneğin DataFrame’de puan sütununda 101’e en yakın 2 değere sahip satırları bulmak için aşağıdaki sözdizimini kullanabiliriz:

 #find rows with two closest values to 101 in points column
df_closest2 = df. iloc [(df[' dots ']- 101 ). abs (). argsort ()[:2]]

#view results
print (df_closest2)

   team points
1 Nets 100
0 Mavs 99

Sonuçtan Nets’in puan sütununda 101’e en yakın değere sahip olduğunu, Mavs’in ise puan sütununda 101’e en yakın değere sahip olduğunu görebiliyoruz.

Ek kaynaklar

Aşağıdaki eğitimlerde diğer yaygın panda görevlerinin nasıl gerçekleştirileceği açıklanmaktadır:

Pandalar: sütun değerlerine göre satırların nasıl seçileceği
Pandalar: aynı sütun değerleriyle satırların nasıl birleştirileceği
Pandalar: bazıları hariç tüm satırlar nasıl silinir

Yorum ekle

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