0Pricing
Pandas & NumPy Academy · Ders

Toplama İşlevleri

Bir dizinin tamamı veya belirli bir ekseni boyunca toplamı, ortalamayı, minimumu, maksimumu ve standart sapmayı hesaplayın.

Toplama İşlevleri, CoddyKit'te ücretsiz bir Pandas & NumPy Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Pandas & NumPy Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Pandas & NumPy Academy kursu toplamda 4 dersten oluşur.

Toplulaştırma Nedir?

Toplulaştırma, bir diziyi toplam veya ortalama gibi birkaç özet değerine indirger. NumPy'nin yerleşik işlevleri bunu döngüye gerek kalmadan hızlı C koduyla yapar.

import numpy as np

a = np.array([3, 7, 2, 9, 1, 6])
print('sum:', a.sum())     # 28
print('mean:', a.mean())   # 4.666...
print('max:', a.max())     # 9

sum() ve cumsum()

Tüm öğelerin toplamı için a.sum(), kümülatif toplam için np.cumsum kullanın. Kümülatif toplamda her konum, kendisinden önceki ve o konumdaki tüm değerlerin toplamını içerir.

import numpy as np

a = np.array([1, 2, 3, 4, 5])
print(a.sum())       # 15
print(np.cumsum(a))  # [ 1  3  6 10 15]

mean() ve std()

a.mean() ortalamayı, a.std() ise standart sapmayı verir. Varsayılan olarak std, N'ye böler; verileriniz bir örneklemse ddof=1 geçirin.

import numpy as np

a = np.array([2.0, 4.0, 4.0, 4.0, 5.0, 5.0, 7.0, 9.0])
print('mean:', a.mean())           # 5.0
print('std (pop):', a.std())       # 2.0
print('std (sample):', a.std(ddof=1))  # 2.138...

argmin/argmax ile min() ve max()

a.min() ve a.max() en küçük ve en büyük değerleri verir. Bunun yerine konumlarını mı istiyorsunuz? argmin ve argmax her birinin dizinini döndürür.

import numpy as np

a = np.array([3, 7, 2, 9, 1, 6])
print('min:', a.min(), 'at index', a.argmin())  # 1 at 4
print('max:', a.max(), 'at index', a.argmax())  # 9 at 3

Bir Eksen Boyunca Toplulaştırma

axis bağımsız değişkeni hangi boyutun indirgeneceğini seçer: axis=0 her sütun için bir değer, axis=1 ise her satır için bir değer verir. Bu bağımsız değişkeni belirtmezseniz dizinin tamamı indirgenir.

import numpy as np

m = np.array([[1, 2, 3],
              [4, 5, 6]])

print(m.sum(axis=0))  # [5 7 9]  -- column sums
print(m.sum(axis=1))  # [ 6 15]  -- row sums
print(m.mean(axis=0)) # [2.5 3.5 4.5]

Şekli Korumak için keepdims=True

Bir eksen boyunca toplulaştırma yapmak o boyutu kaldırır. Boyutu 1 olarak korumak için keepdims=True ekleyin; sonuçta yapılacak yayınlama işlemleri için bu gereklidir.

import numpy as np

m = np.array([[1, 2, 3],
              [4, 5, 6]])

row_sums = m.sum(axis=1, keepdims=True)
print(row_sums.shape)  # (2, 1)

normed = m / row_sums
print(normed.round(3))
# [[0.167 0.333 0.5  ]
#  [0.267 0.333 0.4  ]]

NaN Güvenli Toplulaştırmalar

Tek bir NaN, normal bir sum veya mean işleminin NaN döndürmesine neden olur. NaN güvenli sürümler (np.nansum, np.nanmean ve benzerleri) eksik değerleri yok sayar.

import numpy as np

a = np.array([1.0, np.nan, 3.0, np.nan, 5.0])
print(a.sum())          # nan
print(np.nansum(a))     # 9.0
print(np.nanmean(a))    # 3.0
print(np.nanmax(a))     # 5.0

np.median ve np.percentile

np.median ortadaki değeri verir ve aykırı değerlerden mean işlemine göre çok daha az etkilenir. np.percentile, verilerin belirli bir yüzdesinin altında kaldığı değeri bulur.

import numpy as np

a = np.array([1, 2, 3, 4, 100])  # outlier at 100
print('mean:', a.mean())          # 22.0  -- skewed
print('median:', np.median(a))    # 3.0   -- robust
print(np.percentile(a, [25, 50, 75]))  # [ 2.  3.  4.]

np.any() ve np.all()

np.any, en az bir öğe koşulu sağlıyorsa True döndürür; np.all ise yalnızca her öğe koşulu sağlıyorsa True döndürür. İkisi de satır veya sütun bazında denetim yapabilir.

import numpy as np

a = np.array([1, -2, 3, -4])
print(np.any(a < 0))    # True   (some are negative)
print(np.all(a > 0))    # False  (not all are positive)

# Row-wise check on 2D
m = np.array([[1, 2], [-1, 3]])
print(np.all(m > 0, axis=1))  # [ True False]

np.count_nonzero()

np.count_nonzero, sıfır olmayan veya True olan öğelerin kaç tane olduğunu sayar. Eşleşmeleri kolayca saymak için a > 5 gibi bir koşul geçirin.

import numpy as np

a = np.array([3, 0, 7, 0, 2, 0])
print(np.count_nonzero(a))         # 3
print(np.count_nonzero(a > 2))     # 2  (elements 3 and 7)

m = np.array([[0, 1], [1, 1]])
print(np.count_nonzero(m, axis=0)) # [1 2]

Farklı Değerler için np.unique()

np.unique, sıralanmış farklı değerleri döndürür. return_counts=True eklerseniz her değerin kaç kez göründüğünü de elde edersiniz; böylece anında bir frekans tablosu oluşturabilirsiniz.

import numpy as np

a = np.array([3, 1, 4, 1, 5, 9, 2, 6, 5, 3])
uniq, counts = np.unique(a, return_counts=True)
print(uniq)    # [1 2 3 4 5 6 9]
print(counts)  # [2 1 2 1 2 1 1]

Hızlı Kontrol

Bu derste öğrendiğiniz NumPy toplulaştırma işlevlerini anlayıp anlamadığınızı test edin.

Ders Özeti

Harika iş çıkardınız! NumPy toplulaştırmaları dizileri hızlı C koduyla özetler, axis bağımsız değişkeni neyin indirgeneceğini seçer ve NaN güvenli sürümler eksik değerleri yok sayar. Sırada broadcasting var.

Sıkça Sorulan Sorular

“Toplama İşlevleri” dersi ücretsiz mi?

Evet — “Toplama İşlevleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Pandas & NumPy Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Pandas & NumPy Academy kursu toplamda 4 dersten oluşur.

“Toplama İşlevleri” dersinde ne öğreneceğim?

Bir dizinin tamamı veya belirli bir ekseni boyunca toplamı, ortalamayı, minimumu, maksimumu ve standart sapmayı hesaplayın. Pandas & NumPy Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Pandas & NumPy Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Pandas & NumPy Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Toplama İşlevleri” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Pandas & NumPy Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Pandas & NumPy Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Evrensel İşlevler (ufunc’lar)
  2. Toplama İşlevleri
  3. Yayma Kuralları
  4. Boole Maskeleme ve Gelişmiş Dizinleme
← Pandas & NumPy Academy Sayfasına Dön