Come confrontare due colonne in panda: con esempi


Spesso potresti voler confrontare due colonne in un DataFrame Pandas e scrivere i risultati del confronto in una terza colonna.

Puoi farlo facilmente utilizzando la seguente sintassi:

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

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

Ecco cosa fa questo codice:

  • le condizioni sono le condizioni da verificare tra le due colonne
  • le scelte sono i risultati da restituire in base alle condizioni
  • np.select viene utilizzato per restituire i risultati nella nuova colonna

L’esempio seguente mostra come utilizzare questo codice nella pratica.

Esempio: confronta due colonne in Pandas

Supponiamo di avere il seguente DataFrame che mostra il numero di goal segnati da due squadre di calcio in cinque partite diverse:

 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

Possiamo utilizzare il seguente codice per confrontare il numero di goal per riga e visualizzare il vincitore della partita in una terza colonna:

 #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

I risultati del confronto vengono visualizzati nella nuova colonna denominata vincitore .

Commenti

Ecco alcune cose da tenere a mente quando si confrontano due colonne in un DataFrame panda:

  • Il numero di condizioni e scelte deve essere uguale.
  • L’ impostazione predefinita specifica il valore da visualizzare nella nuova colonna se nessuna delle condizioni è soddisfatta.
  • NumPy e Panda sono necessari affinché questo codice funzioni.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni nei panda:

Come rinominare le colonne in Pandas
Come aggiungere una colonna a un DataFrame Pandas
Come modificare l’ordine delle colonne in Pandas DataFrame

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *