Cómo eliminar valores atípicos de varias columnas en R

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

A menudo, es posible que desee eliminar valores atípicos de varias columnas a la vez en R.

Una forma común de definir una observación como un valor atípico es si es 1,5 veces el rango intercuartílico mayor que el tercer cuartil (Q3) o 1,5 veces el rango intercuartílico menor que el primer cuartil (Q1).

Usando esta definición, podemos usar los siguientes pasos para crear una función simple para identificar valores atípicos y luego aplicar esta función en múltiples columnas en un marco de datos R.

Paso 1: crea un marco de datos.

Primero, creemos un marco de datos en R:

df <- data.frame (índice = c (1, 2, 3, 4, 5, 6, 7, 8, 9, 10),
                 var1 = c (4, 4, 5, 4, 3, 2, 8, 9, 4, 5),
                 var2 = c (1, 2, 4, 4, 6, 9, 7, 8, 5, 29),
                 var3 = c (9, 9, 9, 5, 5, 3, 4, 5, 11, 34))

Paso 2: Defina la función de valor atípico.

A continuación, definamos una función que pueda identificar valores atípicos y una función que luego pueda eliminar valores atípicos:

valores atípicos <- función (x) {

  Q1 <- cuantil (x, probs = .25)
  Q3 <- cuantil (x, probs = .75)
  iqr = Q3-Q1

 límite_uperior = Q3 + (iqr * 1.5)
 límite_inferior = Q1 - (iqr * 1.5)

 x> límite_uperior | x <límite_inferior
}

remove_outliers <- función (df, cols = names (df)) {
  para (col en cols) {
    df <- df [! valores atípicos (df [[col]]),]
  }
  df
}

Paso 3: aplique la función de valor atípico al marco de datos.

Por último, apliquemos esta función en varias columnas del marco de datos para eliminar los valores atípicos:

remove_outliers (df, c ('var1', 'var2', 'var3'))

  índice var1 var2 var3
1 1 4 1 9
2 2 4 2 9
3 3 5 4 9
4 4 4 4 5
5 5 3 6 5
9 9 4 5 11

Puede encontrar más tutoriales de R aquí .

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

Deja un comentario

Si X e Y son dos variables aleatorias distribuidas conjuntamente , entonces la distribución condicional de Y dada X es…
statologos comunidad-2

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

You have Successfully Subscribed!