Python-numpy index out of bound " für die Achse null
Ich habe einen code geschrieben in Python die der folgenden ähnelt:
def adamic_adar_prediction(graph):
adjacencyMatrix = graph.get_adjacency()
AAMatrix = adamic_adar_score(graph)
AAMatrix = np.array(AAMatrix)
i = (-AAMatrix ).argsort(axis=None, kind='mergesort')
j = np.unravel_index(i, AAMatrix .shape)
sortedList = np.vstack(j).T
print(sortedList.size)
print(sortedList[1658943])
print(sortedList[1658945])
Während das Ergebnis für das erste drucken ist 3,316,888 ich die folgende Fehlermeldung für die Letzte print:
IndexError: index 1658944 is out of bounds for axis 0 with size 1658944
Irgendeine Idee warum dieser Fehler entsteht, für mein array?
- Verwenden
print(sortedList[1658943])
statt. - Könntest du den genauen code? Wie "ähnlich" ist dieser code?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht genügend Elemente in Ihrem
array
zum Beispiel:3,316,888
zu sein scheint-Wert bei index1658943
.1658943
und1658945
, aber Sie Fehlermeldung zeigt1658944
, so scheint es, wie Sie nicht tatsächlich mit der Ausführung von code. Leider kann ich nicht helfen, viel mehr als das, aber für mich ist es fühlt sich an wie eine dumme Mischung, irgendwo.Wenn man bedenkt, wie mysteriös, dein problem ist, würde ich gehen Sie vor und testen Sie diese mit einer try/except-Schleife, um sicher sein, der code geht über diesen Punkt und nur Probleme bei index 1658944...
etwas wie:
Bericht zurück, was Ihre Ergebnisse sind.
Danke für all die Kommentare. Ich dachte, mein problem ist, dass der sortedList.Größe gibt die Anzahl der Elemente im array, während ich erwartet hatte die Anzahl der Tupel in meinem array (seit sortedList ist eine Liste von Tupeln [[],[],...]). Also ich habe mein problem gelöst mit
sortedList.shape