[PYTHON] Über Numpy Broadcast

Was wird gesendet?

Numpy verfügt über eine Funktion, die beim Ausführen von Operationen zwischen Matrizen mit unterschiedlichen Dimensionen automatisch in die entsprechende Form konvertiert wird. Diese Funktion wird als Broadcast bezeichnet. Ich denke, es ist schneller, es zu sehen, also schreibe ich es unten.

A = np.array([1, 2, 3, 4, 5])
print(f'{"="*20}A')
print(A)
print(f'{"="*20}A-1')
# (1, 5)Matrix- und Skalarwertberechnung
print(A - 1)
====================A
[1 2 3 4 5]
====================A-1
[0 1 2 3 4]

Internes Verhalten

Numpy passt die Bemaßungen automatisch an, wenn Operationen an Matrizen mit unterschiedlichen Bemaßungen ausgeführt werden. Zum Beispiel erweitert die Operation $ (m, n) + (1, n) $ $ (1, n) $ und konvertiert sie in $ (m, n) $.

\begin{bmatrix} 1 & 2 & 3 & 4 & 5\\\ 6 & 7 & 8 &9 & 10 \end{bmatrix} \- \begin{bmatrix} 1 & 2 & 3 & 4 & 5 \end{bmatrix}\\\ \= \begin{bmatrix} 1 & 2 & 3 & 4 & 5\\\ 6 & 7 & 8 &9 & 10 \end{bmatrix} \- \begin{bmatrix} 1 & 2 & 3 & 4 & 5\\\ 1 & 2 & 3 & 4 & 5 \end{bmatrix}
A = np.array([
    [1, 2, 3, 4, 5],
    [6, 7, 8, 9, 10]])
B = np.array([1, 2, 3, 4, 5])
print(f'{"="*20}A')
print(A)
print(f'{"="*20}B')
print(B)
print(f'{"="*20}A - B')
print(A - B)
====================A
[[ 1  2  3  4  5]
 [ 6  7  8  9 10]]
====================B
[1 2 3 4 5]
====================A - B
[[0 0 0 0 0]
 [5 5 5 5 5]]

Recommended Posts

Über Numpy Broadcast
Über Numpy
Über alle von numpy (2.)
Über Numpy Array und Asarray
Über LangID
Über CAGR
Numpy-Übung 1
Über Tugenden
Numpy [Basic]
Über die Erlaubnis
Über sklearn.preprocessing.Imputer
Über Gunicorn
Informationen zu den Anforderungen.txt
Über das Gebietsschema
numpy Teil 1
NumPy-Grundlagen
Numpy Memorandum _ Matrix
Über Achse = 0, Achse = 1
numpy tipps
Über den Import
Über pip
Über Linux
Über numpy.newaxis
Verwenden Sie Numpy
Über Endian
numpy Teil 2
Über Linux
Über den Import
Über Linux
Über Linux
Über cv2.imread
Über _ und __
Über wxPython
Informationen zur kumulativen Zuordnung von Liste und Numpy-Array