Pandas ileri düzey: yeniden şekillendirme ve performans
Çok düzeyli indeksler, yeniden şekillendirme, pencere hesapları, parça parça işleme ve bellek ile hız iyileştirmeleriyle milyonlarca satırlık log verisini analiz edersin.
Seviye 301 · 17 ders · 15 pratik lab
Dersler
İndeks ve şekil
- Çok düzeyli indeks
- stack, unstack, melt ve pivot
- Kategorik türlerle bellek kazanmak
- Kısa görev: makine-saat matrisi
Pencere ve zaman
- Kayan ve genişleyen pencereler
- groupby ile transform ve filter
- Zamana dayalı pencere: son 10 dakika
- merge_asof ile en yakın zamana göre birleştirmek
- Kısa görev: 5 dakikada 20 başarısız giriş
Büyük veri, tek makine
- Parça parça okumak: chunksize
- Bellek kullanımını ölçmek ve küçültmek
- Döngü yerine vektörel işlem
- Arrow arka ucu ve Parquet
- Yöntem zinciriyle okunur kod
- Kısa görev: yavaş raporu on kat hızlandır
Güvenilir analiz
- Pandas kodunu test etmek
- Bitirme görevi: bir aylık proxy kaydında veri sızdırma analizi
Pratik lablar
- melt ile uzun forma çevir: Her gün için ayrı sütunu olan bir uyarı tablosunu melt ile uzun forma çevirip gün başına toplamı hesapla.
- Çok düzeyli dizinle sorgu: Şube ve tarih düzeyli MultiIndex kurup xs ve dilimleme ile tek şubenin tek haftasını seç.
- stack ve unstack ile eksik bileşimler: unstack ile ana makine×saat matrisi kurup hiç olay görülmeyen bileşimleri sıfırla doldur ve sessiz kalan ana makineleri bul.
- Genişleyen pencereyle kümülatif ortalama: Günlük oltalama bildirimi sayısının genişleyen ortalamasını hesaplayıp ortalamanın hangi günde dengelendiğini yaz.
- groupby transform ile kişiye göre sapma: Her kullanıcının günlük indirme hacmini kendi ortalamasına göre z-puanına çevirip en çok sapan beş günü listele.
- Zamana dayalı pencereyle patlama: Zaman tabanlı kayan pencereyle aynı hesaptan 10 dakika içinde 15'ten fazla parola sıfırlama isteği gelen anları bul.
- En yakın zamana göre eşle: merge_asof ile her uyarıya kendisinden önceki en yakın oturum açma kaydını eşle.
- Tolerans ve grup anahtarıyla eşleme: DHCP kiralarını by ve tolerance kullanarak ağ olaylarına eşleyip her IP'nin o andaki cihazını bul.
- Saat kayması olan iki kaynağı hizala: Saatleri birkaç saniye kayık iki sistemin olaylarını merge_asof ile eşleyip kaymayı ölç ve düzeltilmiş zaman çizelgesini üret.
- Bellek kullanımını ölç: memory_usage(deep=True) ile en çok bellek tüketen sütunları bulup category türüne çevirerek kazancı raporla.
- apply döngüsünü vektörleştir: Satır satır apply ile çalışan bir risk puanı hesabını vektörleştirip sonuçların aynı olduğunu ve hız kazancını göster.
- Arrow ve Parquet ile büyük veri: CSV'den okunan büyük bir tabloyu Arrow arka uçlu Parquet'e taşıyıp yükleme süresi ve bellekteki farkı ölç.
- Yöntem zinciriyle okunur kod: Ara değişkenlerle dolu bir temizlik kodunu assign, query ve pipe kullanan tek bir yöntem zincirine çevir.
- Pandas işlevine test yaz: Bir özetleme işlevi için assert_frame_equal kullanan üç test yazıp boş tablo ve eksik değer durumlarını kapsa.
- Sessizce yanlış sonuç veren birleştirme: Yinelenen anahtarlar yüzünden satırları çoğaltan bir merge işlemini validate argümanıyla yakalayıp doğru toplamı üret.
Kurs hakkında
Çok düzeyli indeksler, yeniden şekillendirme, pencere hesapları, parça parça işleme ve bellek ile hız iyileştirmeleriyle milyonlarca satırlık log verisini analiz edersin.
Ne öğreneceksin
- İndeks ve şekil
- Pencere ve zaman
- Büyük veri, tek makine
- Güvenilir analiz
Ön koşullar
Aynı yolun 101 ve 201 düzeyindeki konularına hâkim olmalısın.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 301 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.