Pandas ile Veri Manipülasyonu
Veri Manipülasyonu, büyük veri setleri içerisinden ihtiyacımız olan bilgiyi çekme, temizleme ve dönüştürme işlemidir. Pandas'ın DataFrame yapısı, bu işlemleri tıpkı bir Excel tablosunda çalışıyormuş gibi kolaylaştırır.
1. Veriye Erişim (loc ve iloc)
Pandas'ta verilere erişmek için en çok kullanılan iki yöntem loc (etiket bazlı) ve iloc (indeks bazlı) seçimdir.
Satır ve Sütun Seçimi
import pandas as pd
df = pd.read_csv("veriler.csv") # Bir dosya okuduğumuzu varsayalım
# iloc: Sadece rakamsal indekslerle seçim
print(df.iloc[0:5, 0:2]) # İlk 5 satır ve ilk 2 sütun
# loc: Sütun isimlerine göre seçim
print(df.loc[df['Yas'] > 30, ['Isim', 'Maas']]) # Yaşı 30'dan büyüklerin adı ve maaşı
2. Koşullu Filtreleme
Veri setinizi belirli kriterlere göre filtrelemek, analizin en kritik adımıdır. Birden fazla koşulu & (ve) veya | (veya) ile birleştirebilirsiniz.
Gelişmiş Filtreleme Örneği
# İstanbul'da yaşayan VE maaşı 20.000'den fazla olanlar
filtre = (df['Sehir'] == 'İstanbul') & (df['Maas'] > 20000)
sonuc = df[filtre]
# Belirli bir sütundaki benzersiz değerleri görme
print(df['Kategori'].unique())
3. Veri Sıralama ve Temizleme
Verileri belirli bir sütuna göre sıralamak veya eksik verileri (NaN) yönetmek için şu metodlar kullanılır:
- sort_values(): Veriyi artan veya azalan şekilde sıralar.
- dropna(): Eksik verilerin olduğu satırları siler.
- fillna(): Eksik verileri belirli bir değerle (örneğin ortalama) doldurur.
# Maaşa göre büyükten küçüğe sırala
sirali_df = df.sort_values(by='Maas', ascending=False)
# Eksik verileri 0 ile doldur
df['Puan'] = df['Puan'].fillna(0)