Kullanışlı Fonksiyonlar

Numpy diziler/matrisler üzerinde çalıştırabileceğimiz çok kullanışlı fonksiyonlar sunar. Bunlar:

● Sum (elemanlar toplamı)

Matris dışında hiç bir parametre vermezsek tüm elemanların toplamını sonuç verir. Yalnız satır ve sutün yönünde toplama işlemini yaptırmak istersek bunu axis ismiyle parametre vermemiz gerekir.

import numpy as np

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

print(np.sum(x))  # tüm elemanlar toplamı "21"
print(np.sum(x, axis=0))  # kolonlar yönünde toplam "[5 7 9]"
print(np.sum(x, axis=1))  # satırlar yönünde toplam "[6 15]"

Şekil üzerinde göstermek istersek axis kavramını şöyle anlatabiliriz:

                  axis=1
              ──────────────>
            ┌─────┬─────┬─────┐
         │  │  1  │  2  │  3  │
axis=0   │  ├─────┼─────┼─────┤
         v  │  4. │  5. │  6. │
            └─────┴─────┴─────┘

● Mean (elemanlar ortalaması)

Elemanların ortalaması da sıklıkla kullandığımız fonksiyonlardandır. Toplamın elaman sayısına bölünmesi demektir. Örnek kodu deneyelim isterseniz.

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

print(np.mean(x))         # tüm elemanlar ortalaması  "3.5"
print(np.mean(x, axis=0)) # kolonlar yönünde ortalama "[2.5 3.5 4.5]"
print(np.mean(x, axis=1)) # satırlar yönünde ortalama "[2 5]"

● Transpose (matris devriği)

Matrisin devriğini alma matrisin satır ve sütunlarının yer değiştirmesi işlemidir. Adı üstünde matrisler için tanımlı bir işlemdir ve anlayacağımız üzere bir dizinin (vektörün) devriğini alma işleminden bahsedemeyiz. Yapmaya çalışsak hata almayız, dizinin kendisinin sonuç olarak geldiğini görürüz.

x = np.array([[1,2], [3,4]])

print(x)    #  "[[1 2]
            #    [3 4]]"

print(x.T)  #  "[[1 3]
            #    [2 4]]"

# Tek boyutta devrik alma işleminin işlevsiz olmasına örnek
v = np.array([1,2,3])

print(v)    #  "[1 2 3]"
print(v.T)  #  "[1 2 3]"

Last updated