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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert