Anfängliches Dilemma:
Auf scheinbar unüberwindbare Herausforderungen stoßen Es wird versucht, eine neue Spalte in einen Pandas DataFrame zu integrieren, wobei Werte basierend auf vorhandenen Spaltendaten zugeordnet werden. Die Verwendung sowohl einer Lambda-Funktion als auch eines Wörterbuchs führt zu Fehlern oder unerwarteten Ergebnissen.
Lösung:
Der richtige Ansatz liegt in der Verwendung der Funktion „map()“ in Verbindung mit dem Zielwörterbuch. Die Syntax lautet: df["B"] = df["A"].map(equiv).
Erklärung:
Die Funktion „map()“ wendet an Operation für jedes Element in einer angegebenen Spalte. In diesem Fall ruft die Operation den zugeordneten Wert aus dem Wörterbuch-Äquivalent basierend auf dem durch die Spaltendaten bereitgestellten Schlüssel ab.
Beispiel:
Bedenken Sie den folgenden Code:
<code class="python">import pandas as pd equiv = {7001:1, 8001:2, 9001:3} df = pd.DataFrame( {"A": [7001, 8001, 9001]} ) df["B"] = df["A"].map(equiv) print(df)</code>
Ausgabe:
A B 0 7001 1 1 8001 2 2 9001 3
Dieser Ansatz fügt die zugeordneten Werte effektiv der neuen Spalte B hinzu. Darüber hinaus werden fehlende Schlüssel elegant behandelt, indem NaN zurückgegeben wird.
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie ordne ich Wörterbuchwerte zu, um eine neue Spalte in einem Pandas-DataFrame zu erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!