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/

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!