So implementieren Sie den Dimensionsaustausch in Numpy

WBOY
Freigeben: 2024-01-26 10:05:06
Original
810 Leute haben es durchsucht

So implementieren Sie den Dimensionsaustausch in Numpy

Tipps zum Austauschen von Dimensionen in Numpy

Einführung:
Numpy ist eine leistungsstarke Python-Bibliothek, die hauptsächlich für wissenschaftliche Berechnungen und Datenanalysen verwendet wird. In Numpy müssen wir uns häufig mit mehrdimensionalen Arrays befassen, und der Dimensionsaustausch von Arrays ist ebenfalls eine der häufigsten Operationen. In diesem Artikel werden einige Techniken zum Austauschen von Dimensionen in Numpy vorgestellt und spezifische Codebeispiele bereitgestellt.

1. Dimensionsaustauschfunktion in Numpy
In Numpy können wir die Funktion transpose() und swapaxes() verwenden, um den Dimensionsaustausch durchzuführen.

  1. transpose()-Funktion
    transpose()-Funktion wird zum Vertauschen der Dimensionen eines Arrays verwendet, was durch Angabe der Reihenfolge der Achsen erreicht werden kann. Der Funktionsprototyp ist:

numpy.transpose(arr, axis)

wobei arr das zu transponierende Array ist, axis die Reihenfolge der Achsen, die eine ganze Zahl oder eine Folge von ganzen Zahlen sein kann. Wenn „axis“ eine ganze Zahl ist, wird ein neues Array mit entlang dieser Achse vertauschten Dimensionen zurückgegeben. Wenn „axis“ eine Folge von ganzen Zahlen ist, wird ein neues Array in der angegebenen Reihenfolge zurückgegeben.

  1. swapaxes()-Funktion
    swapaxes()-Funktion wird verwendet, um die beiden Achsen des Arrays zu vertauschen. Sein Funktionsprototyp ist:

numpy.swapaxes(arr, axis1, axis2)

wobei arr das Array von Achsen ist auszutauschen, Achse1 und Achse2 sind die Achsen, die ausgetauscht werden sollen. Die Funktion swapaxes() gibt ein neues Array zurück, dessen Achsen eine Kopie der Achsen des ursprünglichen Arrays sind, Achse1 und Achse2 jedoch vertauscht sind.

2. Beispiele für den Dimensionsaustausch in Numpy

Im Folgenden verwenden wir einige spezifische Beispiele, um die Techniken des Dimensionsaustauschs in Numpy zu demonstrieren.

Beispiel 1: Dimensionsaustausch mit der Funktion transpose()
Angenommen, wir haben ein dreidimensionales Array mit Formen (3, 4, 2) und möchten seine erste und zweite Dimension austauschen. Der Code lautet wie folgt:

import numpy as np

arr = np.arange(24).reshape(3, 4, 2)
print("Original array:")
print(arr)

new_arr = np .transpose( arr, (1, 0, 2))
print("Exchanged array:")
print(new_arr)

Die laufenden Ergebnisse sind wie folgt:

Original-Array:
[[[ 0 1]
[ 2 3]
[ 4 5]
[ 6 7]]

[[ 8 9]
[10 11]
[12 13]
[14 15]]

[[16 17]
[18 19]
[20 21]
[22 23]]]

Das ausgetauschte Array:
[[[ 0 1]
[ 8 9]
[16 17]]

[[ 2 3]
[10 11]
[18 19]]

[[ 4 5]
[12 13]
[20 21]]

[[ 6 7]
[14 15]
[22 23]]]

Beispiel 2: Verwenden Sie swapaxes() Funktion zum Dimensionsaustausch
Angenommen, wir haben ein dreidimensionales Array der Form (2, 5, 3) und möchten seine erste und zweite Dimension austauschen. Der Code lautet wie folgt:

import numpy as np

arr = np.arange(30).reshape(2, 5, 3)
print("Original array:")
print(arr)

new_arr = np .swapaxes( arr, 0, 1)
print("Array nach Austausch: ")
print(new_arr)

Die laufenden Ergebnisse sind wie folgt:

Original-Array:
[[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[9 10 11]
[12 13 14]]

[[15 16 17]
[18 19 20]
[21 22 23]
[24 25 26]
[27 28 29]]]

Das ausgetauschte Array:
[[[ 0 1 2]
[15 16 17]]

[[ 3 4 5]
[18 19 20]]

[[ 6 7 8]
[21 22 23 ]]

[[ 9 10 11]
[24 25 26]]

[[12 13 14]
[27 28 29]]]

Wir haben die Technik des Dimensionsaustauschs in Numpy durch demonstriert oben zwei Beispiele. Verwenden Sie die Funktionen transpose() und swapaxes(), um die Dimensionen von Arrays einfach auszutauschen, um den Anforderungen verschiedener Probleme gerecht zu werden. Durch Anpassen der Parameter können verschiedene Dimensionsaustauschvorgänge implementiert werden, sodass wir mehrdimensionale Array-Daten flexibler verarbeiten können.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie den Dimensionsaustausch in Numpy. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage