Cómo comparar dos columnas en pandas (con ejemplos)

Actualizado por ultima vez el 7 de mayo de 2021, por .

A menudo, es posible que desee comparar dos columnas en un Pandas DataFrame y escribir los resultados de la comparación en una tercera columna.

Puede hacer esto fácilmente usando la siguiente sintaxis:

condiciones = [(condición1), (condición2)]
elecciones = [" elección1 ", " elección2 "]

df [" new_column_name "] = np. seleccionar (condiciones, opciones, predeterminado)

Esto es lo que hace este código:

  • Las condiciones son las condiciones que se deben verificar entre las dos columnas.
  • Las opciones son los resultados que se devolverán según las condiciones.
  • np.select se usa para devolver los resultados a la nueva columna

El siguiente ejemplo muestra cómo utilizar este código en la práctica.

Ejemplo: comparar dos columnas en pandas

Supongamos que tenemos el siguiente DataFrame que muestra el número de goles marcados por dos equipos de fútbol en cinco partidos diferentes:

importar numpy como np
 importar pandas como pd

#create DataFrame
 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 el siguiente código para comparar el número de goles por fila y mostrar el ganador del partido en una tercera columna:

#definir condiciones 
condiciones = [df [' A_points ']> df [' B_points '],
              df [' A_points '] <df [' B_points ']]

#definir opciones
 opciones = [' A ', ' B ']

# crear una nueva columna en DataFrame que muestre los resultados de las comparaciones
 df [' ganador '] = np. seleccionar (condiciones, opciones, predeterminado = ' Empate ')

#ver el DataFrame
 df

          Ganador de A_points B_points
0 1 4 B
1 3 5 B
2 3 2 A
3 3 3 Corbata
4 5 2 A

Los resultados de la comparación se muestran en la nueva columna denominada ganador .

Notas

Aquí hay algunas cosas a tener en cuenta al comparar dos columnas en un DataFrame de pandas:

  • El número de condiciones y opciones debe ser igual.
  • El valor predeterminado especifica el valor que se mostrará en la nueva columna si no se cumple ninguna de las condiciones.
  • Se requieren tanto NumPy como Pandas para que este código funcione.

Puede encontrar más tutoriales de Python aquí .

  • https://r-project.org
  • https://www.python.org/
  • https://www.stata.com/

Deja un comentario

Se utiliza un ANOVA de una vía para determinar si existe o no una diferencia estadísticamente significativa entre las medias…
statologos comunidad-2

Compartimos información EXCLUSIVA y GRATUITA solo para suscriptores (cursos privados, programas, consejos y mucho más)

You have Successfully Subscribed!