Seite 1 von 1

Unerwünschte Nebenwirkung bei Permutationsfunktion

Verfasst: Dienstag 5. April 2022, 12:48
von Tuk
Hallo zusammen,
ich bin gerade dabei eine Programm zu schreiben, dass eine Permutation beinhaltet und mir diese als auch die Permutationsmatrix aus gibt. Ich hoffe das man mir hier auf die Sprünge helfen kann!

Code: Alles auswählen

import numpy as np
M=np.array([[1, 2, 3, 4], [1, 1, 1, 1], [1, 1, 1, 1], [1, 2, 3, 4], [5, 4, 3, 1]])
def Permutation(X):
        id=np.identity(max(np.shape(X)))
        print (M, "M")
        X[:, [3, 0]] = X[:, [0, 3]] 
        print (M, "permutiertes M ?")
        id[:, [3, 0]] = id[:, [0, 3]] 
        return X,  id
print (Permutation(M)[0])
Die Permutation an sich ist auch völlig in Ordnung, leider wird M dauerhaft verändert. Das heißt am Ende wird mit print(M) die permutierte Matrix ausgegeben anstatt die orginale Matrix. Und ich kann mir ganz und gar nicht erklären, wieso dem so ist. Denn an M sollte nichts geändert werden.

Re: Unerwünschte Nebenwirkung bei Permutationsfunktion

Verfasst: Dienstag 5. April 2022, 13:22
von einfachTobi

Re: Unerwünschte Nebenwirkung bei Permutationsfunktion

Verfasst: Dienstag 5. April 2022, 15:52
von Tuk
Ah, vielen Dank. Mal sehen, ob mir das weiter hilft.