Arithmetik#
Arrays ermöglichen euch, Stapeloperationen auf Daten durchzuführen ohne for
-Schleifen verwenden zu müssen. Dies wird bei NumPy Vektorisierung genannt. Bei allen arithmetischen Operationen zwischen Arrays gleicher Größe wird die Operation elementweise angewendet:
[1]:
import numpy as np
data = np.random.randn(7, 3)
data
[1]:
array([[ 0.07282305, -0.5454217 , 0.07199181],
[ 2.16112354, 0.30496674, 0.73963605],
[-1.61359344, -0.19812259, -0.76049151],
[-0.86957267, -0.5841333 , -0.15678665],
[-0.69817046, 1.86730036, -1.15614376],
[ 0.85112655, -0.61805251, -0.63671618],
[-1.78018583, 1.17915059, -0.6853148 ]])
[2]:
1 / data
[2]:
array([[13.73191506, -1.83344373, 13.89046966],
[ 0.46272228, 3.27904615, 1.3520163 ],
[-0.61973479, -5.04737999, -1.31493907],
[-1.14999015, -1.71193802, -6.37809388],
[-1.43231497, 0.53553248, -0.86494434],
[ 1.17491341, -1.61798549, -1.57055848],
[-0.56173911, 0.8480681 , -1.45918342]])
[3]:
data**2
[3]:
array([[0.0053032 , 0.29748483, 0.00518282],
[4.67045494, 0.09300471, 0.54706149],
[2.6036838 , 0.03925256, 0.57834734],
[0.75615662, 0.34121171, 0.02458205],
[0.48744199, 3.48681063, 1.33666839],
[0.7244164 , 0.38198891, 0.4054075 ],
[3.16906158, 1.39039611, 0.46965638]])
Vergleich zweier Arrays:
[4]:
data2 = np.random.randn(7, 3)
data > data2
[4]:
array([[ True, True, True],
[ True, True, True],
[False, False, False],
[False, False, False],
[False, True, False],
[ True, False, False],
[False, False, True]])