Ich benutze sklearn und habe Probleme mit der Affinitätspropagation. Ich habe eine Eingabematrix gebaut und bekomme immer den folgenden Fehler .sklearn error ValueError: Der Input enthält NaN, unendlich oder einen zu großen Wert für dtype ('float64')
ValueError: Input contains NaN, infinity or a value too large for dtype('float64').
Ich habe
laufennp.isnan(mat.any()) #and gets False
np.isfinite(mat.all()) #and gets True
ich versucht, mit
mat[np.isfinite(mat) == True] = 0
die unendlichen Werte zu entfernen, aber das hat nicht funktioniert entweder. Was kann ich tun, um die unendlichen Werte in meiner Matrix loszuwerden, damit ich den Affinitätsausbreitungsalgorithmus verwenden kann?
Ich benutze Anaconda und Python 2.7.9.
Ich schließe das, da der Autor selbst sagt, dass seine Daten ungültig waren und obwohl alles darauf hinweist, hat er nicht validiert - die Daten entsprechen einem Tippfehler, der ein abschließender Grund ist. –
Ich hatte das gleiche Problem mit meinem Datensatz. Letztendlich: ein Datenfehler, kein Scikit-Bug. Die meisten Antworten sind hilfreich, aber irreführend. Überprüfen Sie, überprüfen Sie Ihre Daten, stellen Sie sicher, dass bei der Konvertierung in 'float64' ist es sowohl endlich und nicht" nan ". Die Fehlermeldung ist passend - das ist fast sicher das Problem für jeden, der sich hier befindet. – Owen