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/