Pandalarda vaka i̇fadesi nasıl yazılır (örnekle)
Case ifadesi, koşullar arasında geçiş yapan ve ilk koşul karşılandığında bir değer döndüren bir ifade türüdür.
Pandas DataFrame’de bir vaka ifadesini uygulamanın en basit yolu, aşağıdaki temel sözdizimini kullanan NumPywhere() işlevini kullanmaktır:
df[' new_column '] = np. where (df[' col2 ']<9, 'value1', n.p. where (df[' col2 ']<12, 'value2', n.p. where (df[' col2 ']<15, 'value3', 'value4')))
Bu özel işlev, col2 adı verilen sütundaki değere bakar ve şunu döndürür:
- sütun2’deki değer 9’dan küçükse ” değer1 “
- sütun2’deki değer 12’den küçükse ” değer2 “
- sütun2’deki değer 15’ten küçükse ” değer3 “
- Önceki koşullardan hiçbiri doğru değilse “ değer4 ”
Aşağıdaki örnekte bu fonksiyonun pratikte nasıl kullanılacağı gösterilmektedir.
Örnek: Pandas’ta vaka ifadesi
Aşağıdaki pandalara sahip olduğumuzu varsayalım DataFrame:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' player ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], ' points ': [6, 8, 9, 9, 12, 14, 15, 17, 19, 22]}) #view DataFrame df player points 0 1 6 1 2 8 2 3 9 3 4 9 4 5 12 5 6 14 6 7 15 7 8 17 8 9 19 9 10 22
Değerleri puan sütunundaki değerlerle belirlenen, sınıf adı verilen yeni bir sütun oluşturan bir case ifadesi yazmak için aşağıdaki sözdizimini kullanabiliriz:
#add 'class' column using case-statement logic df[' class '] = np. where (df[' points ']<9, 'Bad', n.p. where (df[' points ']<12, 'OK', n.p. where (df[' points ']<15, 'Good', 'Great'))) #view updated DataFrame df player points class 0 1 6 Bad 1 2 8 Bad 2 3 9 OK 3 4 9 OK 4 5 12 Good 5 6 14 Good 6 7 15 Great 7 8 17 Great 8 9 19 Great 9 10 22 Great
Case ifadesi puan sütunundaki değere baktı ve şunu verdi:
- Puan sütunundaki değer 9’dan küçükse ” Kötü “
- Puan sütunundaki değer 12’den küçükse ” Tamam “
- Puan sütunundaki değer 15’ten küçükse ” İyi “
- Önceki koşullardan hiçbiri doğru değilse ” Harika “
Not : NumPywhere() işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimler Pandalarda diğer ortak görevlerin nasıl gerçekleştirileceğini açıklamaktadır:
Pandalar’da bir koşula dayalı yeni bir sütun nasıl oluşturulur?
NumPy Where() işlevi birden çok koşulla nasıl kullanılır?