Was ist Numpy Broadcasting?
Bei der Durchführung arithmetischer Operationen in Arrays verschiedener Formen bezieht sich Numpy als Broadcasting. Diese Array -Operationen werden häufig an den jeweiligen Elementen durchgeführt. Wenn zwei Arrays die gleiche Form haben, kann sie mühelos an ihnen erfolgen. Obwohl dieses Konzept nützlich ist, wird das Rundfunk nicht immer empfohlen, da es zu ineffizienten Speicherverbrauch führen kann, die die Berechnung verlangsamt. Numpy -Operationen werden häufig an Array -Paaren durchgeführt, die von Elementen unterteilt sind.
Rundfunkregeln
Eine bestimmte Reihe von Richtlinien muss beim Rundfunk beobachtet werden. Diese werden unten beschrieben:
Lassen Sie uns nun einige Beispiele für die Implementierung des Konzepts des Rundfunks diskutieren.
Beispiel 1:
Bei Arrayspaaren werden Numpy-Operationen in der Regel Element-by-Element durchgeführt. Die beiden Arrays müssen im einfachsten Szenario die gleiche Form haben, wie im folgenden Beispiel:
Numpy importierenWie Sie aus dem obigen Code sehen können, haben wir zwei Arrays: 'One_arr' und 'Two_ arr'. Jeder davon hat einen separaten Satz von Werten. Die Werte in 'One_arr' sind [2.0,3.0,1.0] und 'zwei _arr' sind [3.0,3.0,3.0]. Sie können dann sehen, dass das Ergebnis der Berechnung des Produkts dieser beiden Arrays wie folgt ist:
Wenn bestimmte Anforderungen von den Formen der Arrays erfüllt werden, senkt die Rundfunkregel von Numpy diese Einschränkung. Wenn ein Array und ein skalarer Wert in einer Operation verbunden sind, wird das Rundfunk in seiner grundlegendsten Form demonstriert. Wie Sie sehen können, ist 3 in der Variablen mit dem Namen 'Two_arr enthalten.''
Numpy importierenDer obige Code erzeugt das folgende Ergebnis.
In dem vorhergehenden Beispiel, wobei 'Two_arr' ein Array war, ist das Ergebnis gleichwertig. Wir können uns vorstellen, dass sich der Skalar 'Two_arr' während des arithmetischen Prozesses in ein Array mit der gleichen Form wie 'One _arr erweitert wird.'The Array' Two_arr 'enthält neue Elemente, die lediglich Duplikate des ersten Skalars sind. Der Dehnungsvergleich ist nur hypothetisch. Um Rundfunkoperationen als Speicher und rechnerisch wirtschaftlich als machbar zu machen, ist Numpy intelligent genug, um den ursprünglichen skalaren Wert zu verwenden, anstatt Kopien zu produzieren.
Beispiel 2:
Hier ist ein weiteres einfaches Python -Programm, das Broadcasting ausführt. Wieder werden zwei Arrays erstellt, die unterschiedliche Werte enthalten. Es ist notwendig, 'First_arr' in einen Spaltenvektor mit einer 3 × 1 -Form umzuwandeln, um ein äußeres Produkt zu berechnen. Anschließend wird die Sendung gegen 'Second_arr' durchgeführt, um ein Ergebnis von Größe 3 × 2 zu liefern, das als äußeres Produkt von 'First_arr' und 'Second_arr bezeichnet wird.'Broadcasting to 2 × 3 ist möglich, da' result_arr 'die Form 2 × 3 sowie die Form hat (3,).
Nachdem Sie alle oben genannten Schritte befolgt haben.'Diese haben Dimensionen von 2 × 3 und (2,). Transponieren 'result_arr' liefert eine Form von 3 × 2, die dann gegen 'Second_arr' ausgestrahlt werden kann, um dasselbe Form zu erhalten. In der Regel ergibt die Umwandlung dieses Endes ein Endprodukt in der Form 2 × 3.
Numpy importierenSie können die folgende Ausgabe anzeigen.
Beispiel 3:
Ein dreidimensionales Array kann mit dem folgenden Python-Programm ausgestrahlt werden. In diesem Beispiel wurden zwei Arrays mit dem Namen "First_arr" und "Second_arr" generiert. Das Array 'First_arr' enthält [4,13,26,12] Werte und 'Second_arr' [32,67,45,17] Werte. Die 2-Dimensionen des ersten Arrays machen einen Unterschied. Die Summe des ersten und zweiten Arrays wird unten angezeigt, nachdem der Code ausgeführt wurde. Sie sehen. Die Summe dieser beiden neu erzeugten Arrays wird dann angezeigt.
Numpy importierenHier ist der Ausgangscreenshot des angegebenen Code.
Beispiel 4:
Das letzte Python-Programm, das ein dreidimensionales Array überträgt. In diesem Programm werden zwei Arrays angegeben, von denen die ersten drei Dimensionen haben. Die Summe des ersten und zweiten Arrays wird wie oben gezeigt angezeigt, nachdem der Code ausgeführt wurde. Obwohl die Werte in diesen Arrays variieren, ist der verbleibende Code der gleiche wie der im obige Beispielprogramm verwendet.
Numpy importierenIn der Abbildung unten sehen Sie, dass ein dreidimensionales Array aus dem ersten Array präsentiert wird, gefolgt von einem zweidimensionalen Array aus dem zweiten Array und dem Ergebnis dieser beiden Verwendung des Rundfunkprinzips.
Abschluss
In diesem Artikel wurde über Rundfunk, ein entscheidendes Python -Konzept, erläutert. In Numpy bezieht sich der Begriff "Rundfunk" auf die Fähigkeit, Arrays verschiedener Formen zu behandeln und arithmetische Operationen auszuführen, die häufig durchgeführt werden. Das oben genannte Thema wurde gründlich mit einer Vielzahl von Beispielen bedeckt. In diesem Artikel wurden die genannten Beispielprogramme verwendet, um zu demonstrieren. Sie können versuchen, diese Beispiele auf Ihrem System auszuführen und die Ergebnisse anzusehen, um besser zu verstehen, wie alles im Allgemeinen funktioniert.