NumPy ufuncs


Apa itu ufunc?

ufuncs adalah singkatan dari "Fungsi Universal" dan mereka adalah fungsi NumPy yang beroperasi pada ndarrayobjek.

Mengapa menggunakan ufunc?

ufuncs digunakan untuk mengimplementasikan vektorisasi di NumPy yang jauh lebih cepat daripada mengulangi elemen.

Mereka juga menyediakan penyiaran dan metode tambahan seperti pengurangan, akumulasi dll yang sangat membantu untuk perhitungan.

ufuncs juga mengambil argumen tambahan, seperti:

wherearray boolean atau kondisi yang menentukan di mana operasi harus dilakukan.

dtypemendefinisikan jenis kembali elemen.

outlarik keluaran tempat nilai kembalian harus disalin.


Apa itu Vektorisasi?

Mengubah pernyataan iteratif menjadi operasi berbasis vektor disebut vektorisasi.

Ini lebih cepat karena CPU modern dioptimalkan untuk operasi semacam itu.

Tambahkan Elemen Dua Daftar

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

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

Salah satu cara melakukannya adalah dengan mengulangi kedua daftar dan kemudian menjumlahkan setiap elemen.

Contoh

Tanpa ufunc, kita dapat menggunakan metode bawaan Python zip():

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 memiliki ufunc untuk ini, yang disebut add(x, y) yang akan menghasilkan hasil yang sama.

Contoh

Dengan ufunc, kita dapat menggunakan add()fungsi:

import numpy as np

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

print(z)