„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie erstelle ich eine Spalte basierend auf If-Else-Else-Bedingungen in Pandas?

Wie erstelle ich eine Spalte basierend auf If-Else-Else-Bedingungen in Pandas?

Veröffentlicht am 09.11.2024
Durchsuche:701

How to Create a Column Based on If-Else-Else Conditions in Pandas?

Erstellen einer Spalte mit If-Else-Else-Bedingungen in Pandas

So erstellen Sie eine neue Spalte basierend auf einer If-Elif-Else-Bedingung , gibt es zwei Hauptansätze:

Nicht vektorisiert Ansatz

Dieser Ansatz beinhaltet die Definition einer Funktion, die mit Zeilen arbeitet:

def f(row):
    if row['A'] == row['B']:
        val = 0
    elif row['A'] > row['B']:
        val = 1
    else:
        val = -1
    return val

Dann wenden Sie es auf den Datenrahmen entlang der Zeilen an:

df['C'] = df.apply(f, axis=1)

Vektorisierter Ansatz

Der vektorisierte Ansatz verwendet np.where, um die neue Spalte zu erstellen direkt:

df['C'] = np.where(
    df['A'] == df['B'], 0, np.where(
    df['A'] >  df['B'], 1, -1)) 

Dieser Ansatz ist für große Datensätze effizienter.

Hier ist ein Beispiel mit dem bereitgestellten Datenrahmen:

Eingang DataFrame

AB
22
31
13

Ausgabe DataFrame

ABC
220
311
13 -1
Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729378457 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3