So beheben sie: valueerror: alle arrays müssen die gleiche länge haben


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

 ValueError : All arrays must be of the same length

Dieser Fehler tritt auf, wenn Sie versuchen, einen Pandas-DataFrame zu erstellen und nicht alle Spalten im DataFrame die gleiche Länge haben.

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

So reproduzieren Sie den Fehler

Nehmen wir an, wir versuchen, den folgenden Pandas-DataFrame zu erstellen:

 import pandas as pd

#define arrays to use as columns in DataFrame
team = ['A', 'A', 'A', 'A', 'B', 'B', 'B']
position = ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F']
points = [5, 7, 7, 9, 12, 9, 9, 4]

#attempt to create DataFrame from arrays
df = pd. DataFrame ({' team ': team,
                   ' position ': position,
                   ' dots ': dots})

ValueError : All arrays must be of the same length

Wir erhalten eine Fehlermeldung, die uns mitteilt, dass nicht jedes Array die gleiche Länge hat.

Wir können dies überprüfen, indem wir die Länge jedes Arrays ausdrucken:

 #print length of each array
print ( len (team), len (position), len (points))

7 8 8

Wir sehen, dass die „Team“-Tabelle nur 7 Elemente hat, während die „Positions“- und „Punkte“-Tabellen jeweils 8 Elemente haben.

So beheben Sie den Fehler

Der einfachste Weg, diesen Fehler zu beheben, besteht darin, einfach sicherzustellen, dass jedes von uns verwendete Array die gleiche Länge hat:

 import pandas as pd

#define arrays to use as columns in DataFrame
team = ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B']
position = ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F']
points = [5, 7, 7, 9, 12, 9, 9, 4]

#create DataFrame from arrays
df = pd. DataFrame ({' team ': team,
                   ' position ': position,
                   ' dots ': dots})

#view DataFrame
df

	team position points
0 A G 5
1 A G 7
2 A F 7
3 A F 9
4 B G 12
5 B G 9
6 B F 9
7 B F 4

Beachten Sie, dass jedes Array dieses Mal die gleiche Länge hat.

Wenn wir also die Arrays zum Erstellen des Pandas-DataFrames verwenden, erhalten wir keine Fehlermeldung, da jede Spalte die gleiche Länge hat.

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