Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich in Pandas eine neue Spalte basierend auf Werten aus einer vorhandenen Spalte erstellen?

Wie kann ich in Pandas eine neue Spalte basierend auf Werten aus einer vorhandenen Spalte erstellen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-27 21:14:14680Durchsuche

How Can I Create a New Column in Pandas Based on Values from an Existing Column?

Erstellen Sie eine neue Spalte mit aus einer vorhandenen Spalte ausgewählten Werten

Das Auswählen bestimmter Werte aus einer vorhandenen Spalte zum Füllen einer neuen Spalte ist eine häufige Aufgabe der Datenmanipulation. Lassen Sie uns zwei Ansätze untersuchen, um dies in Python mithilfe von Pandas zu erreichen.

Methode 1: np.where für zwei Auswahlmöglichkeiten

Wenn nur zwei Optionen zur Auswahl stehen , ist die Funktion np.where eine praktische Wahl. Im bereitgestellten Beispiel möchten wir eine Farbspalte mit „Grün“ für Werte in der Set-Spalte erstellen, die gleich „Z“ sind, andernfalls „Rot“.

df['color'] = np.where(df['Set']=='Z', 'green', 'red')

Methode 2: np .select für Multiple Choices

Für Szenarien mit mehr als zwei Auswahlmöglichkeiten bietet np.select mehr Flexibilität. Lassen Sie uns weitere Bedingungen für die Farbspalte einführen:

  • 'gelb' für when (df['Set'] == 'Z') & (df['Type'] == 'A')
  • 'blau' für when (df['Set'] == 'Z') & (df['Type'] == 'B')
  • 'lila' für when (df['Type'] == 'B')
  • 'schwarz' für alle anderen Fälle

Der Code für dieses Szenario lautet wie folgt:

conditions = [
    (df['Set'] == 'Z') & (df['Type'] == 'A'),
    (df['Set'] == 'Z') & (df['Type'] == 'B'),
    (df['Type'] == 'B')]
choices = ['yellow', 'blue', 'purple']
df['color'] = np.select(conditions, choices, default='black')

Dieser Ansatz ermöglicht eine einfache Anpassung der auszuwählenden Bedingungen und Werte, wodurch er für komplexere Szenarien geeignet ist Szenarien.

Das obige ist der detaillierte Inhalt vonWie kann ich in Pandas eine neue Spalte basierend auf Werten aus einer vorhandenen Spalte 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