Kapitel 30
Rechnen mit NumPy
860
Operanden können auch zwei Arrays gleicher Form sein. Die Operationen werden element-
weise ausgeführt (siehe Abbildung 30.1).
Abb. 30.1: Elementweise Addition
Beachten Sie: Der Operator * bewirkt keine Matrizenmultiplikation. Dafür verwenden Sie
die Funktion
dot(). Dazu gleich mehr.
30.7 Funktionen, die elementweise ausgeführt werden
NumPy bietet für Arrays auch die üblichen unären mathematischen Funktionen: sin(),
cos(), tan(), sqrt() (Quadratwurzel), round(), ceil() (Rundung nach oben), floor()
(Rundung nach unten), log(), log10(). Diese Funktionen werden elementweise ausge-
führt. Das heißt, bei einem Aufruf wird die Funktion auf jedes Element des Arrays ange-
wandt und ein Array mit den Ergebnissen zurückgegeben:
Wie mit einfachen Zahlen kann man auch mit Arrays komplexe Terme und verschachtelte
Funktionsaufrufe bilden. Sie werden immer für jedes Element ausgewertet.
>>> import numpy as np
>>> a = np.array([[0, 1], [2, 3]])
>>> a + 1 # zu jedem Element wird eine 1 addiert
array([[1, 2],
[3, 4]])
>>> a * 2 # jedes Element wird mit 2 multipliziert
array([[0, 2],
[4, 6]])
>>> a = np.array([[0, 1], [2, 3]])
>>> a * a
array([[0, 1],
[4, 9]])
>>> a + np.eye(2, 2, dtype=int)
array([[1, 1],
[2, 4]])
>>> x = np.array([1, 10, 100])
>>> np.log10(x)
array([ 0., 1., 2.])

Get Python 3 - Lernen und professionell anwenden now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.