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

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

Puede hacer esto fácilmente usando la siguiente sintaxis:

df $ nuevo_col <- ifelse (df ​​$ col1 > df $ col2 , ' A ',
                 ifelse (df ​​$ col1 < df $ col2 , ' B ', ' C '))

Esta única línea de código hace lo siguiente:

  • Si la columna 1 es mayor que la columna 2, escriba ‘A’ como resultado de la tercera columna.
  • De lo contrario, si la columna 1 es menor que la columna 2, escriba ‘B’ como salida.
  • De lo contrario, escriba ‘C’ como salida.

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

Ejemplo: comparar dos columnas en R

Supongamos que tenemos el siguiente marco de datos que muestra la cantidad de goles marcados por dos equipos de fútbol en cinco partidos diferentes:

#create marco de datos
df <- data.frame (A_points = c (1, 3, 3, 3, 5),
                 B_puntos = c (4, 5, 2, 3, 2))

#ver marco de datos
df

  A_points B_points
1 1 4
2 3 5
3 3 2
4 3 3
5 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:

#compare A_points y B_points y envíe los resultados a la nueva columna titulada ganador 
df $ ganador <- ifelse (df ​​$ A_points > df $ B_points, ' A ',
                ifelse (df ​​$ A_points < df $ B_points, ' B ', ' Tie ') )

#ver marco de datos
df

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

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

Recursos adicionales

Cómo apilar columnas de marcos de datos en R
Cómo combinar dos columnas en una en R
Cómo recorrer los nombres de las columnas en R

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

Redactor del artículo

  • Luis Benites
    Director de Statologos.com

    Tengo una Maestría en Ciencias en Estadística Aplicada y he trabajado en algoritmos de aprendizaje automático para empresas profesionales tanto en el sector de la salud como en el comercio minorista.

    Ver todas las entradas

¿Te hemos ayudado?

Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:

La ayuda no cuesta nada

Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo:

Deja un comentario

Una prueba de Sobel es un método para probar la importancia de un efecto de mediación. Según Wikipedia : En…
statologos comunidad-2

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

You have Successfully Subscribed!