So beheben sie: valueerror: festlegen eines array-elements mit einer sequenz


Ein Fehler, der bei der Verwendung von Python auftreten kann, ist:

 ValueError : setting an array element with a sequence.

Dieser Fehler tritt normalerweise auf, wenn versucht wird, mehrere Zahlen an einer einzigen Position in einem NumPy-Array zu gruppieren.

Das folgende Beispiel zeigt, wie dieser Fehler in der Praxis behoben werden kann.

So reproduzieren Sie den Fehler

Angenommen, wir haben das folgende NumPy-Array:

 import numpy as np

#create NumPy array
data = np. array ([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

Nehmen wir nun an, wir versuchen, zwei Zahlen an der ersten Position des Arrays zu platzieren:

 #attempt to cram values '4' and '5' both into first position of NumPy array
data[0] = np. array ([4,5])

ValueError : setting an array element with a sequence.

Der Fehler sagt uns genau, was wir falsch gemacht haben: Wir haben versucht, ein Element des NumPy-Arrays mit einer Folge von Werten zu definieren.

Insbesondere haben wir versucht, die Werte „4“ und „5“ an der ersten Position des NumPy-Arrays zu platzieren.

Dies ist nicht möglich, daher erhalten wir eine Fehlermeldung.

So beheben Sie den Fehler

Sie können diesen Fehler beheben, indem Sie einfach der ersten Position des Arrays einen Wert zuweisen:

 #assign the value '4' to the first position of the array
data[0] = np. array ([4])

#view updated array
data

array([ 4, 2, 3, 4, 5, 6, 7, 8, 9, 10])

Bitte beachten Sie, dass wir keine Fehlermeldungen erhalten.

Wenn wir den Array-Elementen tatsächlich zwei neue Werte zuweisen möchten, müssen wir die folgende Syntax verwenden:

 #assign the values '4' and '5' to the first two positions of the array
data[0:2] = np. array ([4, 5])

#view updated array
data

array([ 4, 5, 3, 4, 5, 6, 7, 8, 9, 10])

Beachten Sie, dass die ersten beiden Werte in der Tabelle geändert wurden, während alle anderen Werte gleich geblieben sind.

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Fehler in Python beheben:

So beheben Sie KeyError in Pandas
So beheben Sie: ValueError: Float NaN kann nicht in int konvertiert werden
So beheben Sie: ValueError: Operanden konnten nicht mit Formen übertragen werden

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert