Jednoduchá aritmetika
Jednoduchá aritmetika
Můžete použít aritmetické operátory +
-
*
/
přímo mezi poli NumPy, ale tato část pojednává o jejich rozšíření, kde máme funkce, které mohou přebírat libovolné objekty podobné poli, např. seznamy, n-tice atd., a provádět aritmetiku podmíněně .
Aritmetický podmíněně: znamená, že můžeme definovat podmínky, za kterých se má provést aritmetická operace.
Všechny diskutované aritmetické funkce mají where
parametr, ve kterém můžeme specifikovat tuto podmínku.
Přidání
Funkce add()
sečte obsah dvou polí a vrátí výsledky v novém poli.
Příklad
Přidejte hodnoty v arr1 k hodnotám v arr2:
import numpy as np
arr1 = np.array([10, 11, 12, 13, 14, 15])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.add(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [30 32 34 36 38 40], což jsou součty 10+20, 11+21, 12+22 atd.
Odčítání
Funkce subtract()
odečte hodnoty z jednoho pole s hodnotami z jiného pole a vrátí výsledky v novém poli.
Příklad
Odečtěte hodnoty v arr2 od hodnot v arr1:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.subtract(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [-10 -1 8 17 26 35], což je výsledek 10-20, 20-21, 30-22 atd.
Násobení
Funkce multiply()
vynásobí hodnoty z jednoho pole hodnotami z jiného pole a vrátí výsledky v novém poli.
Příklad
Vynásobte hodnoty v arr1 hodnotami v arr2:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([20,
21, 22, 23, 24, 25])
newarr = np.multiply(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [200 420 660 920 1200 1500], což je výsledek 10*20, 20*21, 30*22 atd.
Divize
Funkce divide()
rozdělí hodnoty z jednoho pole hodnotami z jiného pole a vrátí výsledky v novém poli.
Příklad
Vydělte hodnoty v arr1 hodnotami v arr2:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3,
5, 10, 8, 2, 33])
newarr = np.divide(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [3.33333333 4. 3. 5. 25. 1.81818182], což je výsledek 10/3, 20/5, 30/10 atd.
Napájení
Funkce power()
zvýší hodnoty z prvního pole na mocninu hodnot druhého pole a vrátí výsledky v novém poli.
Příklad
Zvyšte hodnoty v arr1 na mocninu hodnot v arr2:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3,
5, 6, 8, 2, 33])
newarr = np.power(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [1000 3200000 729000000 6553600000000 2500 0], což je výsledek 10*10*10, 20*20*20*20*20, 30*30*30*30*30 atd.
Zbytek
Funkce mod()
a remainder()
vrátí zbytek hodnot v prvním poli odpovídající hodnotám ve druhém poli a vrátí výsledky v novém poli.
Příklad
Vraťte zbytky:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.mod(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí [1 6 3 0 0 27], což jsou zbytky, když vydělíte 10 3 (10%3), 20 7 (20%7), 30 9 (30%9) atd.
Při použití funkce získáte stejný výsledek remainder()
:
Příklad
Vraťte zbytky:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.remainder(arr1, arr2)
print(newarr)
Kvocient a Mod
Funkce divmod()
vrací jak podíl, tak mod. Návratovou hodnotou jsou dvě pole, první pole obsahuje kvocient a druhé pole obsahuje mod.
Příklad
Vraťte podíl a mod:
import numpy as np
arr1 = np.array([10, 20, 30, 40, 50, 60])
arr2 =
np.array([3, 7, 9, 8, 2, 33])
newarr = np.divmod(arr1, arr2)
print(newarr)
Výše uvedený příklad vrátí:
(pole([3, 2, 3, 5, 25, 1]), pole([1, 6, 3, 0, 0, 27]))
První pole představuje podíly ( celočíselná hodnota, když dělíte 10 3, 20 7, 30 9 atd
. Druhé pole představuje zbytky stejných dělení.
Absolutní hodnoty
Funkce absolute()
a abs()
funkce provádějí stejné absolutní operace po prvcích, ale měli bychom je používat absolute()
, abychom se vyhnuli záměně s vestavěnými funkcemi pythonumath.abs()
Příklad
Vraťte podíl a mod:
import numpy as np
arr = np.array([-1, -2, 1, 2, 3, -4])
newarr = np.absolute(arr)
print(newarr)
Výše uvedený příklad vrátí [1 2 1 2 3 4].