Erstellen einer neuen Spalte basierend auf Werten aus mehreren Spalten in Pandas
In Pandas ist es möglich, eine neue Spalte basierend auf den Werten zu erstellen Werte, die in mehreren anderen Spalten vorhanden sind. Diese Funktionalität ist nützlich, wenn Sie komplexe Logik oder benutzerdefinierte Funktionen anwenden, um aussagekräftige Erkenntnisse aus den Daten abzuleiten.
Betrachten Sie als anschauliches Beispiel die Aufgabe, eine neue Spalte mit der Bezeichnung „race_label“ basierend auf den Werten in sechs Ethnizitätsspalten zu erstellen : ERI_Hispanic, ERI_AmerInd_AKNatv, ERI_Asian, ERI_Black_Afr.Amer, ERI_HI_PacIsl und ERI_White. Die Anforderung besteht darin, Personen anhand ihrer Rasse anhand der folgenden Kriterien zu klassifizieren:
Lösung
Um dies zu erreichen Es werden sowohl eine benutzerdefinierte Funktion als auch die Pandas apply()-Funktion verwendet.
Definieren Sie die benutzerdefinierte Funktion Funktion:
def label_race(row): if row['eri_hispanic'] == 1: return 'Hispanic' if row['eri_afr_amer'] + row['eri_asian'] + row['eri_hawaiian'] + row['eri_nat_amer'] + row['eri_white'] > 1: return 'Two Or More' if row['eri_nat_amer'] == 1: return 'A/I AK Native' if row['eri_asian'] == 1: return 'Asian' if row['eri_afr_amer'] == 1: return 'Black/AA' if row['eri_hawaiian'] == 1: return 'Haw/Pac Isl.' if row['eri_white'] == 1: return 'White' return 'Other'
Anwenden der benutzerdefinierten Funktion mit Pandas:
df['race_label'] = df.apply(label_race, axis=1)
Dies wird Erstellen Sie im Pandas-Datenrahmen eine neue Spalte mit dem Namen „race_label“, die die entsprechende Klassifizierung für jede Zeile basierend auf der Eingabe enthält Kriterien.
Durch die Kombination der benutzerdefinierten Funktion und der Pandas apply()-Funktion können wir eine neue Spalte erstellen, die aus komplexer Logik abgeleitet wird, die auf mehrere Spalten angewendet wird, was eine effiziente Datenanalyse und -interpretation erleichtert.
Das obige ist der detaillierte Inhalt vonWie erstelle ich eine neue Rassenklassifizierungsspalte in Pandas basierend auf mehreren Ethnizitätsspalten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!