Cómo utilizar la función setdiff en R (con ejemplos)

La función setdiff () en R se puede utilizar para encontrar diferencias entre dos conjuntos. Esta función utiliza la siguiente sintaxis:

setdiff (x, y)

dónde:

  • x, y: vectores o marcos de datos que contienen una secuencia de elementos

Este tutorial proporciona varios ejemplos de cómo utilizar esta función en la práctica.

Ejemplo 1: Setdiff con vectores numéricos

El siguiente código muestra cómo usar setdiff () para identificar todos los valores en el vector a que no ocurren en el vector b :

#definir vectores
a <- c (1, 3, 4, 5, 9, 10)
b <- c (1, 2, 3, 4, 5, 6)

# encontrar todos los valores en a que no ocurren en b
 setdiff (a, b)

[1] 9 10

Hay dos valores que ocurren en el vector a que no ocurren en el vector b : 9 y 10 .

Si invertimos el orden de los vectores en la función setdiff () , podemos identificar todos los valores en el vector b que no ocurren en el vector a :

# encontrar todos los valores en b que no ocurren en un
 setdiff (b, a)

[1] 2 6

Hay dos valores que ocurren en el vector b que no ocurren en el vector a : 2 y 6 .

Ejemplo 2: Setdiff con vectores de caracteres

El siguiente código muestra cómo usar setdiff () para identificar todos los valores en el vector char1 que no ocurren en el vector char2 :

#definir vectores de caracteres
char1 <- c ('A', 'B', 'C', 'D', 'E')
char2 <- c ('A', 'B', 'E', 'F', 'G')

# busque todos los valores en char1 que no ocurren en char2
 setdiff (char1, char2)

[1] "C" "D"

Ejemplo 3: Setdiff con marcos de datos

El siguiente código muestra cómo usar setdiff () para identificar todos los valores en una columna de marco de datos que no aparecen en la misma columna de un segundo marco de datos:

#define marcos de datos 
df1 <- data. marco (equipo = c ('A', 'B', 'C', 'D'),
                 conferencia = c ('Oeste', 'Oeste', 'Este', 'Este'),
                 puntos = c (88, 97, 94, 104))

df2 <- datos. marco (equipo = c ('A', 'B', 'C', 'D'),
                 conferencia = c ('Oeste', 'Oeste', 'Este', 'Este'),
                 puntos = c (88, 97, 98, 99))

# encontrar diferencias entre las columnas de puntos en los dos marcos de datos
 setdiff (df1 $ puntos, df2 $ puntos)

[1] 94 104

Podemos ver que los valores 94 y 104 ocurren en la columna de puntos del primer marco de datos, pero no en la columna de puntos del segundo marco de datos.

Recursos adicionales

Cómo sumar columnas específicas en R
Cómo sumar filas específicas en R
Cómo realizar una coincidencia parcial de cadenas en R

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

Deja un comentario

El ANOVA de Welch es una alternativa al ANOVA unidireccional típico cuando se viola el supuesto de varianzas iguales .…
statologos comunidad-2

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

You have Successfully Subscribed!