Pandas, büyük veri setleri üzerinde etkili bir şekilde filtreleme yapmak için bir dizi fonksiyon sunar. Bu yazıda, özellikle df.query fonksiyonunu kullanarak DataFrame’leri nasıl filtreleyeceğinizi öğreneceksiniz.
df.query Nedir?
df.query fonksiyonu, DataFrame içindeki verileri SQL benzeri bir dil kullanarak filtrelemenizi sağlar. Bu, büyük veri setlerinde verimli bir şekilde filtreleme yapmanıza olanak tanır.
Nasıl Kullanılır?
Önce basit bir DataFrame oluşturalım:
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 75000, 90000]}
df = pd.DataFrame(data)
Şimdi, df.query fonksiyonunu kullanarak bu DataFrame’i filtreleyelim. Örneğin, 30 yaşından büyük ve maaşı 70000’den fazla olanları seçelim:
filtered_df = df.query('Age > 30 and Salary > 70000')
Bu, DataFrame’i belirli bir koşula göre filtreleyen ve yeni bir DataFrame döndüren güçlü bir yöntemdir.
Daha Karmaşık Sorgular
df.query ile daha karmaşık sorgular da yazabilirsiniz. Örneğin, bir liste içindeki değerlere göre filtreleme yapalım:
names_to_include = ['Alice', 'Charlie']
filtered_df = df.query('Name in @names_to_include')
Bu, @
sembolünü kullanarak dışarıdan bir değişkeni sorguya dahil etmenin bir örneğidir.
Performans ve Avantajlar
df.query fonksiyonu, büyük veri setlerinde performansı artırmak için optimize edilmiştir. Özellikle büyük DataFrame’lerde, bu fonksiyon kullanılarak yapılan sorgular, geleneksel Pandas sorgularına göre daha hızlı çalışabilir.
Bu örnekler, df.query fonksiyonunun temel kullanımını ve bazı daha karmaşık senaryoları kapsamaktadır. Bu fonksiyon, veri analizi ve filtreleme işlemlerini daha okunabilir ve etkili bir şekilde gerçekleştirmenin güçlü bir aracıdır.