Heim > Backend-Entwicklung > Python-Tutorial > Wie transponiert man Matrizen effizient in Python?

Wie transponiert man Matrizen effizient in Python?

Susan Sarandon
Freigeben: 2024-10-19 09:05:29
Original
532 Leute haben es durchsucht

How to Efficiently Transpose Matrices in Python?

Transponieren von Matrizen in Python

Das Transponieren einer Matrix beinhaltet das Vertauschen ihrer Zeilen und Spalten, wodurch sie effektiv um ihre Diagonale gedreht wird. In Python kann diese Aufgabe mit verschiedenen Ansätzen effizient erledigt werden.

Eine gängige Methode nutzt die Zip-Funktion, die mehrere Iterables zu einem einzigen Iterable von Tupeln kombinieren kann. Durch die Paarung der Elemente in jedem Tupel können wir die Matrix leicht neu organisieren:

<code class="python">A = [[1, 2, 3], [4, 5, 6]]
zipped_matrix = zip(*A)
print(list(zipped_matrix))
# Output: [(1, 4), (2, 5), (3, 6)]</code>
Nach dem Login kopieren

Um eine transponierte Matrix als Liste von Listen zu erhalten, können wir die komprimierte Iterable weiterverarbeiten:

<code class="python">transposed_matrix = list(zip(*A))
print(transposed_matrix)
# Output: [[1, 4], [2, 5], [3, 6]]</code>
Nach dem Login kopieren

Alternativ können wir die Map-Funktion verwenden, um jedes Tupel im komprimierten Iterable in eine Liste umzuwandeln:

<code class="python">from functools import partial

map_transposed_matrix = partial(map, list)
zipped_matrix = zip(*A)
transposed_matrix = map_transposed_matrix(zipped_matrix)
print(list(transposed_matrix))
# Output: [[1, 4], [2, 5], [3, 6]]</code>
Nach dem Login kopieren

Diese Techniken ermöglichen eine effiziente Transponierung von Matrizen in Python und ermöglichen so eine flexible Datenbearbeitung und -analyse.

Das obige ist der detaillierte Inhalt vonWie transponiert man Matrizen effizient in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage