Matrix-Elemente mit Numpy neu anordnen

Ich habe eine NumPy-Matrix, die ich vereinfacht habe, um Folgendes zu veranschaulichen:

       a  b  c  d  e  f 
A =  [[0, 1, 2, 3, 4, 5],
 b    [1, 0, 3, 4, 5, 6],
 c    [2, 3, 0, 5, 6, 7],
 d    [3, 4, 5, 0, 7, 8],
 e    [4, 5, 6, 7, 0, 9],
 f    [5, 6, 7, 8, 9, 0]]

wo die Zahl an den "Kreuzungen" wichtig ist, aber ihre Reihenfolge nicht stimmt. Ich möchte die Zeilen und Spalten neu anordnen, sodass die neue Reihenfolge [a, d, b, e, c, f] lautet, aber dieser Wert, den ich als "Schnittmenge" bezeichne, ist der gleiche.

Unten habe ich begonnen, die Matrix so zu transformieren, wie ich es möchte. Das Ausfüllen der 'e'-Zeile beinhaltet das Betrachten der obigen Schnittpunkte nach (e, a) (= 4), dann (e, d) (= 7), dann (e, b) (= 5), (e, e). , (e, c) und (e, f)

       a  d  b  e  c  f
A1=  [[0, 3, 1, 4, 2, 5],
 d    [3, 0, 4, 7, 5, 8],
 b    [1, 4, 0, 5, 3, 6],  
 e    [4, 7, 5, 

Kann mir jemand bitte vorschlagen, wie ich meine Matrix auf diese Weise neu anordnen kann?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage