Erstellen einer neuen Spalte mit bedingungsbasierten Werten
Diese Frage untersucht, wie man einem bestimmten Datenrahmen eine neue Spalte (Farbe) hinzufügt. Die Bedingung ist, dass die Farbe auf „Grün“ gesetzt werden soll, wenn der entsprechende Wert in der Spalte „Set“ „Z“ ist, andernfalls „Rot“.
Lösung mit Numpy Wo:
Für Szenarien mit nur zwei Auswahlmöglichkeiten kann die np.where-Methode verwendet werden. Hier ist der Code:
df['color'] = np.where(df['Set'] == 'Z', 'green', 'red')
Dieser Ansatz weist effektiv „Grün“ den Zeilen zu, in denen Set „Z“ und ansonsten „Rot“ ist.
Lösung mit Numpy Select:
In Fällen, in denen mehr als zwei Bedingungen vorliegen, kann np.select eingesetzt werden. Nehmen wir an, die Farbe sollte die folgenden Kriterien erfüllen:
In diesem Szenario wäre der Code:
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')
Diese Lösung ermöglicht eine flexible und detaillierte bedingungsbasierte Wertzuweisung für die neue Spalte.
Das obige ist der detaillierte Inhalt vonWie erstelle ich eine neue Spalte mit bedingungsbasierten Werten in Pandas?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!