Heim > Backend-Entwicklung > Python-Tutorial > Wie erstelle ich mit Python eine neue Spalte basierend auf Bedingungen in einer vorhandenen Spalte?

Wie erstelle ich mit Python eine neue Spalte basierend auf Bedingungen in einer vorhandenen Spalte?

Barbara Streisand
Freigeben: 2024-12-30 05:18:21
Original
643 Leute haben es durchsucht

How to Create a New Column Based on Conditions in an Existing Column Using Python?

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)
Nach dem Login kopieren

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')
Nach dem Login kopieren

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)
Nach dem Login kopieren

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')
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage