Erstellen einer neuen Spalte mit Werten basierend auf einer vorhandenen Spalte
In bestimmten Datenanalyseszenarien müssen Sie möglicherweise eine neue Spalte erstellen Die Werte werden basierend auf bestimmten Bedingungen in einer vorhandenen Spalte ausgewählt. Dies kann mit verschiedenen Methoden in Python erreicht werden, abhängig von der Anzahl der zu prüfenden Bedingungen.
Two-Choice-Szenarien mit np.where
Wenn Sie nur zwei haben Auswahlmöglichkeiten, die Numpy-Funktion np.where kann effizient verwendet werden. Es hat die folgende Form:
df['new_column'] = np.where(condition, value_if_true, value_if_false)
wobei „df“ der Datenrahmen ist, „condition“ ein boolescher Ausdruck ist, der die Bedingung definiert, „value_if_true“ der Wert ist, der zugewiesen werden soll, wenn die Bedingung „True“ ist. und „value_if_false“ ist der Wert, der zugewiesen werden soll, wenn die Bedingung „Falsch“ ist.
Zum Beispiel, um eine Spalte „Farbe“ im bereitgestellten Datenrahmen zu erstellen wobei „Farbe“ „grün“ ist, wenn „Set“ „Z“ ist, andernfalls „rot“, können Sie Folgendes verwenden:
df['color'] = np.where(df['Set']=='Z', 'green', 'red')
Mehrere Bedingungen mit np.select
Wenn Sie mehr als zwei Bedingungen überprüfen müssen, kann die Numpy-Funktion np.select verwendet werden. Es ermöglicht eine komplexere bedingte Logik. Das Format ist wie folgt:
df['new_column'] = np.select(conditions, choices, default=None)
wobei „Bedingungen“ eine Liste boolescher Ausdrücke ist, „Auswahl“ eine Liste von Werten ist, die jeder Bedingung entsprechen, und „Standard“ der Wert ist, der zugewiesen werden soll, wenn Keine der Bedingungen ist erfüllt.
Zum Beispiel, wenn 'Farbe' als 'Gelb' zugewiesen werden soll, wenn ('Set' == 'Z') & ('Typ' == 'A'), 'blau' wenn ('Set' == 'Z') & ('Typ' == 'B') und 'lila' wenn nur ('Typ' == 'B') und ' black‘ andernfalls können Sie Folgendes verwenden:
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')
Das obige ist der detaillierte Inhalt vonWie erstelle ich mit Python eine neue Spalte basierend auf Bedingungen in einer vorhandenen Spalte?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!