Heim  >  Artikel  >  Backend-Entwicklung  >  Wie ordne ich Wörterbuchwerte zu, um eine neue Spalte in einem Pandas-DataFrame zu erstellen?

Wie ordne ich Wörterbuchwerte zu, um eine neue Spalte in einem Pandas-DataFrame zu erstellen?

Susan Sarandon
Susan SarandonOriginal
2024-10-28 20:21:30129Durchsuche

How to Map Dictionary Values to Create a New Column in a Pandas DataFrame?

Umgang mit Pandas-Mapping-Frustrationen: Hinzufügen einer Spalte mit zugeordneten Wörterbuchwerten

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:

  • Schlüsselbehandlung: Wenn ein Schlüssel im Wörterbuch keinem Element in der Spalte entspricht, wird der Der zugeordnete Wert wird zu NaN.
  • Leistung: Der Zuordnungsvorgang kann für große Datensätze rechenintensiv sein. Ziehen Sie bei Bedarf Optimierungstechniken in Betracht.

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!

Stellungnahme:
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