NumPy ufuncs

Ano ang ufuncs?

Ufuncs ay tinutukoy bilang 'Universal Functions' (Universal Functions), ang mga function ng NumPy na gagamitin sa pag-operate ng ndarray object.

Bakit gagamitin ang ufuncs?

Ufunc ayon sa NumPy para ma-implementahin ang vectorization, kung saan mas mabilis kaysa sa pag-iterasyon ng mga elemento.

Sinasagawa din nila ang iba pang mga pamamaraan, tulad ng reduce, accumulate, at iba pa, na malaki ang maitutulong sa kalkulasyon.

Ang ufuncs ay tumatanggap ng ibang mga parameter, tulad ng:

where Array ng boolean o kondisyon, na ginagamit upang tukuyin kung saan dapat gawin ang operasyon.

dtype Tinukoy ang uri ng halimbawa ng elemento na dapat ibalik.

out Ang halimbawa na dapat kopyahin sa output array na dapat ibalik.

Ano ang Vectorization?

Ang pagbabagong pahina ng iterasyon sa operasyon na nakabase sa vector ay tinatawag na vectorization.

Dahil napag-optimisa ang modernong CPU para sa ganitong operasyon, mas mabilis ito.

Magdagdag sa mga elemento ng dalawang listahan:

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

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

Isang paraan ay magpaikot sa dalawang listahan, at magkakalap ng kabuuan ng bawat elemento.

Eksemplo

Kung walang ufunc, maaari naming gamitin ang nakalalimang built-in zip() Paraan:

x = [1, 2, 3, 4]
y = [4, 5, 6, 7]
z = []
for i, j in zip(x, y):
  z.append(i + j)
print(z)

Patakbo ng Eksemplo

Para dito, mayroong ufunc ang NumPy na may pangalang add(x, y)ay magbibigay ng katulad na resulta.

Eksemplo

Sa pamamagitan ng ufunc, maaari naming gamitin add() Function:

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

Patakbo ng Eksemplo