Hoe twee kolommen in panda's te vergelijken: met voorbeelden


Vaak wilt u misschien twee kolommen in een Pandas DataFrame vergelijken en de vergelijkingsresultaten naar een derde kolom schrijven.

U kunt dit eenvoudig doen met behulp van de volgende syntaxis:

 conditions=[(condition1),(condition2)]
choices=[" choice1 "," choice2 "]

df[" new_column_name "]=np. select (conditions, choices, default)

Dit is wat deze code doet:

  • voorwaarden zijn de voorwaarden die tussen de twee kolommen moeten worden gecontroleerd
  • Keuzes zijn de resultaten die moeten worden geretourneerd op basis van omstandigheden
  • np.select wordt gebruikt om de resultaten in de nieuwe kolom te retourneren

Het volgende voorbeeld laat zien hoe u deze code in de praktijk kunt gebruiken.

Voorbeeld: Vergelijk twee kolommen in Panda’s

Stel dat we het volgende DataFrame hebben dat het aantal doelpunten weergeeft dat door twee voetbalteams in vijf verschillende wedstrijden is gescoord:

 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

We kunnen de volgende code gebruiken om het aantal doelpunten per rij te vergelijken en de wedstrijdwinnaar in een derde kolom weer te geven:

 #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

De vergelijkingsresultaten worden weergegeven in de nieuwe kolom genaamd winnaar .

Opmerkingen

Hier zijn een paar dingen waarmee u rekening moet houden bij het vergelijken van twee kolommen in een Panda DataFrame:

  • Het aantal voorwaarden en keuzes moet gelijk zijn.
  • De standaardwaarde specificeert de waarde die in de nieuwe kolom moet worden weergegeven als aan geen van de voorwaarden wordt voldaan.
  • NumPy en Pandas zijn vereist om deze code te laten werken.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende taken in panda’s kunt uitvoeren:

Hoe kolommen te hernoemen in Pandas
Hoe u een kolom toevoegt aan een Pandas DataFrame
Hoe u de kolomvolgorde in Pandas DataFrame kunt wijzigen

Einen Kommentar hinzufügen

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