- Use all learning features, such as tests, quizzes and surveys.
- You can write posts and exchange ideas in our forums.
- We will confirm your participation in some courses.
AI.Lab
Topic outline
-
-
Vektorisierung
Vektorisierung kann in NumPy genutzt werden, um Operationen auf Daten in Arrays auf effiziente und übersichtliche Weise durchzuführen. Dabei wird die Operation statt einzeln auf allen Elementen auf dem ganzen Array durchgeführt.
Im Folgenden wird anhand des
Kosinus
beispielhaft gezeigt, wie eine beliebige Funktion auf einem Array ausgeführt werden kann: -
import numpy as np x = np.arange(0, 2*np.pi, 0.01) # Die Funktion berechnet den Kosinus, die Funktionalität kann aber beliebig ausgetauscht werden, solange ein Array der gleichen Form wie x entsteht. def myFunc(x): return np.cos(x) y = myFunc(x)
-
Zur Darstellung des Ergebnisses wird nun
pyplot
verwendet. Zur genaueren Benutzung der Bibliothek kommen wir in einem späteren Kapitel. -
from matplotlib import pyplot as plt # Die nächse Zeile wird nur für Jupyter Notebooks benötigt %matplotlib inline plt.figure(figsize = (10,5)) plt.plot(x, y, color='blue', linewidth=5) plt.xlabel('x') plt.ylabel('cos(x)') plt.grid(True) plt.show()
-
Auf die gleiche Art und Weise können auch Vektormultiplikationen durchgeführt werden. Wir multiplizieren das
y
Array dazu mit sich selbst (es kann auch ein einfacher Faktor gewählt werden). -
y2=y*y # Quadrierung des Y-Wertes plt.figure(figsize = (10,5)) plt.plot(x, y2, color='blue', linewidth=5) plt.xlabel('x') plt.ylabel('cos^2(x)') plt.grid(True) plt.show()
-
Da die Arrays
y
undy2
die gleichen Dimensionen haben, können wir diese nun auch mit Vektor- bzw. Arrayaddition verrechnen: -
y3= y2+y # Verrechnen der beiden Arrays plt.figure(figsize = (10,5)) plt.plot(x, y3, color='blue', linewidth=5) plt.xlabel('x') plt.ylabel('cos^2(x)+cos(x)') plt.grid(True) plt.show()
-