Was verursacht den Pandas-Fehler „ValueError: Kann von einer doppelten Achse nicht neu indiziert werden'?

Mary-Kate Olsen
Freigeben: 2024-10-23 16:26:02
Original
448 Leute haben es durchsucht

What Causes the Pandas Error

Verstehen von „ValueError: Neuindizierung von einer doppelten Achse nicht möglich“

In der Pandas-Bibliothek von Python weist diese Fehlermeldung darauf hin, dass ein Vorgang nicht ausgeführt werden kann weil die Datenstruktur doppelte Werte in der Achse enthält, auf die verwiesen wird.

Fehlerursache

Der Fehler tritt insbesondere auf, wenn versucht wird, einen Datenrahmen oder eine Datenreihe durch Zuweisen neu zu indizieren eine neue Zeile oder Spalte mithilfe eines bereits vorhandenen Index. Bei der Neuindizierung werden die Indexbezeichnungen geändert. Wenn doppelte Bezeichnungen vorhanden sind, ist es unmöglich, die Vorgänge eindeutig den entsprechenden Daten zuzuordnen.

Beispielszenario

Zur Veranschaulichung Fehler, ziehen Sie einen Pandas DataFrame mit doppelten Spaltennamen in Betracht. Hier ist ein Python-Snippet, das zeigt, wie dies passieren kann:

<code class="python">import pandas as pd

df = pd.DataFrame({
    "ID": [1, 2, 3],
    "Name": ["Alice", "Bob", "Charlie"],
    "Score": [90, 80, 70],
    "Age": [25, 26, 27]
})

df["Score"] = df["Score"] * 2
df["Age"] = df["Age"] + 1

# Attempt to create a duplicate column
df["Score"] = df["Score"] * 1.1</code>
Nach dem Login kopieren

Wenn Sie dieses Snippet ausführen, wird der folgende Fehler auftreten:

ValueError: cannot reindex from a duplicate axis
Nach dem Login kopieren

Dies liegt daran, dass der DataFrame dies bereits getan hat eine Spalte mit dem Namen „Score“ und Sie versuchen, ihr einen neuen Wert mit demselben Namen zuzuweisen. Die doppelte Spalte verhindert, dass Pandas die Spalte erfolgreich neu indiziert.

Lösung

Um diesen Fehler zu beheben, müssen Sie sicherstellen, dass die für die Neuindizierung verwendeten Indexwerte eindeutig sind. Bei der Zuordnung zu vorhandenen Zeilen oder Spalten bedeutet dies, doppelte Beschriftungen zu vermeiden. Wenn die doppelten Werte unbeabsichtigt eingeführt wurden, können Sie den Index mit der Methode .duplicated() überprüfen und die Duplikate entsprechend entfernen.

Das obige ist der detaillierte Inhalt vonWas verursacht den Pandas-Fehler „ValueError: Kann von einer doppelten Achse nicht neu indiziert werden'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!