BaşlayınÜcretsiz Başlayın

Görevden alt görevlere

Bu egzersizde, Olimpiyat etkinlikleri veri kümesinde belirli bir yıldaki sporcuların ortalama yaşını hesaplayan take_mean_age() fonksiyonunu paralel hesaplama ile uygulayacaksın. Senin için yüklenmiş olan athlete_events DataFrame'i, diğerlerinin yanı sıra iki sütun içeriyor:

  • Year: Olimpiyat etkinliğinin gerçekleştiği yıl
  • Age: Olimpiyat sporcusunun yaşı

İş yükünü birden fazla süreç arasında dağıtmana olanak sağlayan multiprocessor.Pool API'sini kullanacaksın. Örnek kodda parallel_apply() fonksiyonu tanımlı. Bu fonksiyon, uygulanacak fonksiyonu, gruplamayı ve analiz için gereken çekirdek sayısını girdi olarak alır. Ayrıca her işlemi zamanlamak için @print_timing dekoratörünün kullanıldığını unutma.

Bu egzersiz

Data Engineering'e Giriş

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • Kodu tamamla ve take_mean_age fonksiyonunu önce 1, sonra 2 ve son olarak 4 çekirdek ile uygula.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Function to apply a function over multiple cores
@print_timing
def parallel_apply(apply_func, groups, nb_cores):
    with Pool(nb_cores) as p:
        results = p.map(apply_func, groups)
    return pd.concat(results)

# Parallel apply using 1 core
parallel_apply(take_mean_age, athlete_events.groupby('Year'), ____)

# Parallel apply using 2 cores
parallel_apply(take_mean_age, athlete_events.groupby('Year'), ____)

# Parallel apply using 4 cores
parallel_apply(take_mean_age, athlete_events.groupby('Year'), ____)
Kodu Düzenle ve Çalıştır