Kapitel 8. Berechnungen auf Arrays: Übertragen
Diese Arbeit wurde mithilfe von KI übersetzt. Wir freuen uns über dein Feedback und deine Kommentare: translation-feedback@oreilly.com
In Kapitel 6 haben wir gesehen, wie die universellen Funktionen von NumPy verwendet werden können, um Operationen zu vektorisieren und dadurch langsame Python-Schleifen zu vermeiden. In diesem Kapitel geht es um Broadcasting: eine Reihe von Regeln, mit denen du in NumPy binäre Operationen (z. B. Addition, Subtraktion, Multiplikation usw.) zwischen Arrays unterschiedlicher Größe und Form anwenden kannst.
Einführung in den Rundfunk
Erinnere dich daran, dass binäre Operationen bei Arrays gleicher Größe Element für Element durchgeführt werden:
In
[
1
]:
import
numpy
as
np
In
[
2
]:
a
=
np
.
array
([
0
,
1
,
2
])
b
=
np
.
array
([
5
,
5
,
5
])
a
+
b
Out
[
2
]:
array
([
5
,
6
,
7
])
Mit Hilfe von Broadcasting können diese Arten von Binäroperationen an Arrays unterschiedlicher Größe durchgeführt werden - zum Beispiel können wir einen Skalar (stell dir vor, er ist ein null-dimensionales Array) ganz einfach zu einem Array hinzufügen:
In
[
3
]:
a
+
5
Out
[
3
]:
array
([
5
,
6
,
7
])
Wir können uns das als eine Operation vorstellen, die den Wert 5
in das Array [5, 5, 5]
streckt oder dupliziert und die Ergebnisse addiert.
Wir können diese Idee auch auf Arrays höherer Dimensionen ausweiten. Beobachte das Ergebnis, wenn wir ein eindimensionales Feld zu einem zweidimensionalen Feld hinzufügen:
In
[
4
]:
M
=
np
.
ones
((
3
,
3
))
M
Out
[
4
]:
array
([[
1.
,
1.
,
Get Python Data Science Handbook, 2. Auflage 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.