Como comparar duas colunas em pandas: com exemplos


Freqüentemente, você pode querer comparar duas colunas em um DataFrame do Pandas e gravar os resultados da comparação em uma terceira coluna.

Você pode fazer isso facilmente usando a seguinte sintaxe:

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

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

Aqui está o que este código faz:

  • condições são as condições a serem verificadas entre as duas colunas
  • escolhas são os resultados a serem retornados com base nas condições
  • np.select é usado para retornar os resultados na nova coluna

O exemplo a seguir mostra como usar esse código na prática.

Exemplo: compare duas colunas no Pandas

Suponha que temos o seguinte DataFrame que mostra o número de gols marcados por dois times de futebol em cinco partidas diferentes:

 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

Podemos usar o código a seguir para comparar o número de gols por linha e exibir o vencedor da partida em uma terceira coluna:

 #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

Os resultados da comparação são exibidos na nova coluna chamada vencedor .

Comentários

Aqui estão algumas coisas que você deve ter em mente ao comparar duas colunas em um DataFrame do pandas:

  • O número de condições e escolhas deve ser igual.
  • O padrão especifica o valor a ser exibido na nova coluna se nenhuma das condições for atendida.
  • NumPy e Pandas são necessários para que este código funcione.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em pandas:

Como renomear colunas no Pandas
Como adicionar uma coluna a um DataFrame do Pandas
Como alterar a ordem das colunas no Pandas DataFrame

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *