So vergleichen sie zwei spalten in pandas: mit beispielen
Häufig möchten Sie möglicherweise zwei Spalten in einem Pandas DataFrame vergleichen und die Vergleichsergebnisse in eine dritte Spalte schreiben.
Sie können dies ganz einfach mit der folgenden Syntax tun:
conditions=[(condition1),(condition2)] choices=[" choice1 "," choice2 "] df[" new_column_name "]=np. select (conditions, choices, default)
Folgendes bewirkt dieser Code:
- Bedingungen sind die Bedingungen, die zwischen den beiden Spalten überprüft werden sollen
- Auswahlmöglichkeiten sind die Ergebnisse, die basierend auf Bedingungen zurückgegeben werden sollen
- np.select wird verwendet, um die Ergebnisse in der neuen Spalte zurückzugeben
Das folgende Beispiel zeigt, wie dieser Code in der Praxis verwendet wird.
Beispiel: Vergleichen Sie zwei Spalten in Pandas
Angenommen, wir haben den folgenden DataFrame, der die Anzahl der Tore zeigt, die zwei Fußballmannschaften in fünf verschiedenen Spielen erzielt haben:
import numpy as np import pandas as pd #createDataFrame df = pd. DataFrame ({' A_points ': [1, 3, 3, 3, 5], ' B_points ': [4, 5, 2, 3, 2]}) #view DataFrame df A_points B_points 0 1 4 1 3 5 2 3 2 3 3 3 4 5 2
Mit dem folgenden Code können wir die Anzahl der Tore pro Zeile vergleichen und den Matchwinner in einer dritten Spalte anzeigen:
#define conditions conditions = [df[' A_points '] > df[' B_points '], df[' A_points '] < df[' B_points ']] #define choices choices = [' A ', ' B '] #create new column in DataFrame that displays results of comparisons df[' winner '] = np. select (conditions, choices, default=' Tie ') #view the DataFrame df A_points B_points winner 0 1 4 B 1 3 5 B 2 3 2 A 3 3 3 Tie 4 5 2 A
Die Vergleichsergebnisse werden in der neuen Spalte „Gewinner“ angezeigt.
Kommentare
Hier sind einige Dinge, die Sie beim Vergleich zweier Spalten in einem Pandas-DataFrame beachten sollten:
- Die Anzahl der Bedingungen und Auswahlmöglichkeiten muss gleich sein.
- Der Standardwert gibt den Wert an, der in der neuen Spalte angezeigt werden soll, wenn keine der Bedingungen erfüllt ist.
- Damit dieser Code funktioniert, sind NumPy und Pandas erforderlich.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in Pandas ausführen:
So benennen Sie Spalten in Pandas um
So fügen Sie einem Pandas DataFrame eine Spalte hinzu
So ändern Sie die Spaltenreihenfolge in Pandas DataFrame