NumPy ufunc'ları


ufunc nedir?

ufuncs "Evrensel İşlevler" anlamına gelir ve bunlar ndarraynesne üzerinde çalışan NumPy işlevleridir.

Neden ufuncs kullanılır?

ufuncs, öğeler üzerinde yineleme yapmaktan çok daha hızlı olan NumPy'de vektörleştirmeyi uygulamak için kullanılır .

Ayrıca, hesaplama için çok yararlı olan yayın ve azaltma, biriktirme vb. gibi ek yöntemler sağlarlar.

ufuncs ayrıca aşağıdaki gibi ek argümanlar alır:

where Boolean dizisi veya işlemlerin nerede gerçekleşeceğini tanımlayan koşul.

dtype öğelerin dönüş türünü tanımlama.

out dönüş değerinin kopyalanması gereken çıktı dizisi.


Vektörleştirme nedir?

Yinelemeli ifadeleri vektör tabanlı bir işleme dönüştürmeye vektörleştirme denir.

Modern CPU'lar bu tür işlemler için optimize edildiğinden daha hızlıdır.

İki Listenin Öğelerini Ekleme

liste 1: [1, 2, 3, 4]

liste 2: [4, 5, 6, 7]

Bunu yapmanın bir yolu, her iki listeyi de yinelemek ve ardından her bir öğeyi toplamaktır.

Örnek

ufunc olmadan Python'un yerleşik zip()yöntemini kullanabiliriz:

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []

for i, j in zip(x, y):
  z.append(i + j)
print(z)

NumPy'nin bunun add(x, y) için aynı sonucu üretecek bir ufunc'u vardır.

Örnek

ufunc ile şu add()işlevi kullanabiliriz:

import numpy as np

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = np.add(x, y)

print(z)