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