Eliminar duplicados en R

Eliminar duplicados en R

Cuando se trabaja con grandes conjuntos de datos en R, muchas veces es necesario eliminar entradas duplicadas para poder analizar los datos de manera precisa y eficiente. En este artículo, aprenderás diferentes métodos para eliminar duplicados en R y cómo aplicarlos a tus conjuntos de datos.

📋 Aquí podrás encontrar✍
  1. Eliminar duplicados usando unique()
    1. Ejemplo de uso de unique()
  2. Eliminar duplicados usando duplicated() y !
    1. Ejemplo de uso de duplicated() y !
  3. Eliminar duplicados usando distinct()
    1. Ejemplo de uso de distinct()
  4. Conclusión
  5. Preguntas frecuentes
    1. ¿Eliminar duplicados afecta la integridad de los datos?
    2. ¿Cómo puedo determinar si mi conjunto de datos tiene duplicados?
    3. ¿Es necesario instalar el paquete dplyr para usar distinct()?

Eliminar duplicados usando unique()

La función unique() en R elimina todas las entradas duplicadas de un vector. Este método es útil cuando se trabaja con un vector que contiene duplicados. Por ejemplo, vamos a crear un vector con unos cuantos duplicados:


vector_dup <- c(1, 2, 3, 4, 3, 5, 2) vector_uniq <- unique(vector_dup)

El vector resultante, "vector_uniq", contendrá solo las entradas únicas, que son 1, 2, 3, 4 y 5.

Ejemplo de uso de unique()

Supongamos que tenemos una lista de nombres de empleados y queremos eliminar duplicados:


lista_empleados <- c("Juan", "Pedro", "Sara", "Juan", "Ana", "Sara") lista_sin_duplicados <- unique(lista_empleados)

El resultado de "lista_sin_duplicados" será: "Juan", "Pedro", "Sara" y "Ana".

Eliminar duplicados usando duplicated() y !

La función duplicated() permite identificar entradas duplicadas en un vector o data frame. Agregando el not (!) antes de duplicated(), podemos obtener una lista de todas las entradas no duplicadas. Por ejemplo:


vector_dup <- c(1, 2, 3, 4, 3, 5, 2) vector_sin_dup <- vector_dup[!duplicated(vector_dup)]

El resultado de "vector_sin_dup" será el mismo que con el método anterior, 1, 2, 3, 4 y 5.

Ejemplo de uso de duplicated() y !

Supongamos que tenemos un data frame de estudiantes y sus calificaciones. Queremos eliminar las entradas duplicadas basadas en los nombres de estudiantes:


df <- data.frame(estudiante = c("Juan", "Pedro", "Sara", "Juan", "Ana", "Sara"), calificacion = c(8, 7, 9, 7, 6, 8)) df_sin_duplicados <- df[!duplicated(df$estudiante), ]

El resultado de "df_sin_duplicados" será un data frame con solo las entradas únicas basadas en el nombre del estudiante.

Eliminar duplicados usando distinct()

La función distinct() del paquete dplyr en R permite eliminar duplicados de un data frame. Similar a los métodos anteriores, distinct() retorna solo las entradas no duplicadas de un data frame. El siguiente ejemplo muestra cómo utilizar distinct() para eliminar duplicados basados en una columna de un data frame:


library(dplyr)
df <- data.frame(estudiante = c("Juan", "Pedro", "Sara", "Juan", "Ana", "Sara"), calificacion = c(8, 7, 9, 7, 6, 8)) df_sin_duplicados <- distinct(df, estudiante, .keep_all = TRUE)

El argumento .keep_all = TRUE permite mantener todas las columnas del data frame original.

Ejemplo de uso de distinct()

Supongamos que tenemos un data frame de empleados y sus salarios. Queremos eliminar las entradas duplicadas basadas en el identificador único del empleado:


library(dplyr)
df <- data.frame(id_empleado = c(1, 2, 3, 3, 4, 5, 5), salario = c(3000, 3500, 4000, 4000, 4500, 5000, 5000)) df_sin_duplicados <- distinct(df, id_empleado, .keep_all = TRUE)

El resultado de "df_sin_duplicados" será un data frame con solo las entradas únicas basadas en el identificador único del empleado.

Conclusión

Este artículo presentó tres métodos para eliminar duplicados en R: unique(), duplicated() y distinct(). Los métodos son aplicables tanto para vectores como para data frames y brindan la oportunidad de elegir el mejor enfoque según la estructura de los datos.

No dudes en aplicar estos métodos para cualquier proyecto de análisis de datos o programación en R.

Preguntas frecuentes

¿Eliminar duplicados afecta la integridad de los datos?

No necesariamente. La eliminación de duplicados puede ser un paso importante en la limpieza de datos para analizarlos de manera precisa y sin redundancias.

¿Cómo puedo determinar si mi conjunto de datos tiene duplicados?

Puedes utilizar la función duplicated() para identificar duplicados en un vector o data frame. También puedes utilizar la función unique() para encontrar entradas únicas en un vector.

¿Es necesario instalar el paquete dplyr para usar distinct()?

Sí, es necesario tener instalado y cargado el paquete dplyr en R para utilizar la función distinct(). Puedes instalar dplyr mediante el siguiente comando: install.packages("dplyr").

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Subir