Estudio y Depuración de Datos
  • Declaración de autoría
  • Tema 1: Análisis Exploratorio de Datos
    • Tipos de variables
      • Ejercicio: Tipos de Datos
        • Resultados
    • Codificación y Transformación
      • Ejercicio: Codificación y Transformación
        • Resultados
    • Descriptivos, Gráficos y Tablas
      • Ejercicio: Gráficos y Tablas
        • Resultados
    • Ejemplo de un análisis descriptivo básico para detectar errores e incongruencias
    • PRACTICA 1
      • Resultados
  • Tema 2: Control de integridad de los datos
    • Introducción a los datos atípicos
      • Ejercicios
        • Resultados
    • Detección y tratamiento de datos atípicos (univariante)
    • Detección y tratamiento de datos atípicos (bivariante)
      • Ejercicio I
        • Resultados
    • Detección de datos atípicos y su tratamiento (automatización)
      • Ejercicio I - automatización
        • Resultados
    • Detección y tratamiento de datos atípicos (multivariante)
      • Ejercicio II
        • Resultados
    • Detección y tratamiento de duplicados
      • Ejercicio
        • Reusltados
    • Ejemplo de detección y tratamiento de atípicos y duplicados
      • Resultados
    • PRACTICA 2
      • Resultados
  • Tema 3: Valores Perdidos
    • Detección de datos perdidos
      • Ejercicios
    • Tratamiento de datos perdidos (Imputación Simple)
      • Ejercicio - Epidemia Ébola
        • Resultados
      • Ejercicio - Tipos de datos missing
        • Resultados
    • Tratamiento de datos perdidos (Imputación Múltiple con MICE)
      • Ejercicio - MICE
        • Resultados
    • PRACTICA 3
      • Resultados
    • PRÁCTICA GRUPAL
  • Bibliografía
    • 📚Bibliografía
Powered by GitBook
On this page
  1. Tema 2: Control de integridad de los datos

Detección y tratamiento de duplicados

Los datos duplicados se refieren a observaciones o registros en un conjunto de datos que tienen los mismos valores en todas o en la mayoría de sus variables. Es decir, dos o más filas en un conjunto de datos son idénticas o muy similares en términos de los valores que contienen.

La presencia de datos duplicados puede afectar la calidad y la validez de los análisis estadísticos y los modelos predictivos, ya que pueden introducir sesgos y distorsiones en los resultados. Por lo tanto, es común realizar la detección y el tratamiento de datos duplicados al limpiar y preparar los datos antes de realizar análisis más avanzados.

Los datos duplicados pueden ocurrir por diversas razones:

  1. Como errores de entrada de datos,

  2. Problemas en la recolección de datos,

  3. O simplemente porque las mismas observaciones se han registrado más de una vez.

Identificar y abordar estos duplicados es esencial para asegurar la precisión y la confiabilidad de los resultados de cualquier análisis o modelado que se realice con esos datos.

Ejemplo de duplicados en R:

df <- data.frame(
ID = c(1, 2, 3, 4, 2, 5),
  
                Name = c("John", "Jane", "Bob", "Alice", "Jane", "Charlie"),
  
                Age = c(25, 30, 22, 28, 30, 35),
  
                Score = c(85, 92, 78, 90, 92, 80)
)

La función duplicated() te permite identificar las filas duplicadas en un dataframe y junto con ! los puedes eliminar y conservar solo las primeras ocurrencias:

###Identificación de los duplicados
duplicated(df)


# Fijaos que sólo te da uno de los dos duplicados
[1] FALSE FALSE FALSE FALSE  TRUE FALSE

# Eliminar duplicados y conservar solo las primeras ocurrencias
df_no_duplicates <- df[!duplicated(df), ]
df_no_duplicates

La función unique() se puede utilizar para obtener las filas únicas de un dataframe, lo que puede también ayudar a identificar y tratar los duplicados, la diferencia es que con esta no sabes cuáles han sido los duplicados ni cuantos:

# Obtener filas únicas
unique(df)

Por otro lado la librería dplyr proporciona la función distinct() para obtener filas únicas de un dataframe muy similar que unique. También se puede utilizar para eliminar duplicados:

library(dplyr)

# Eliminar duplicados usando distinct

distinct(df)

y finalmente la función subset() se puede utilizar para eliminar duplicados basándose en una condición:

# Eliminar duplicados basados en la columna 'ID'
df_no_duplicates <- subset(df, !duplicated(ID)) 
PreviousResultadosNextEjercicio

Last updated 3 months ago

Page cover image