¡Enhorabuena!

Limpieza de datos en Java

Dennis Lee

Software Engineer

Recorrido por la limpieza de datos

// De evaluar la calidad
DescriptiveStatistics stats = new DescriptiveStatistics(values);
System.out.println("Mean: " + stats.getMean());

// A transformar cadenas String clean = text.trim().toLowerCase();
// A validar rangos boolean isValid = Range.between(0, 100).contains(value);
// A limpiar tablas Table cleaned = data.where(sales.isGreaterThan(1000));
Limpieza de datos en Java

Evaluar la calidad de los datos

  • Datos malos → malas decisiones
  • Evalúa la calidad: outliers, faltantes, tipos erróneos
// Comprobar estadísticas
double mean = stats.getMean();

// Detectar nulos boolean isMissing = Optional.ofNullable(value).isEmpty();
// Verificar tipos boolean isValidDate = LocalDate.parse(dateStr, formatter);
Limpieza de datos en Java

Transformar datos de forma coherente

  • Formatos incoherentes impiden un análisis preciso
  • Limpia cadenas; estandariza categorías y fechas
// Normalizar cadenas (p. ej., quitar no letras)
String cleaned = dirtyName.replaceAll("[^a-zA-Z\\s]", "");

// Estandarizar categorías String standard = categoryMap.getOrDefault(value, "Other");
// Convertir fechas LocalDateTime datetime = LocalDateTime.parse(dateStr, formatter);
Limpieza de datos en Java

Validar la integridad de datos

  • Para el mal dato antes de que entre al sistema
  • Comprueba rangos y formatos según reglas de negocio
// Comprobar rangos
boolean inRange = Range.between(min, max).contains(value);

// Validar patrones boolean matches = Pattern.matches(pattern, text);
// Aplicar restricciones Set<ConstraintViolation<Data>> violations = validator.validate(data);
Limpieza de datos en Java

Limpiar datos tabulares

for (String colName : data.columnNames()) {
    // Comprobar valores faltantes 
    System.out.println(data.column(colName).countMissing());
}

StringColumn cleaned = names.map(String::toLowerCase) // Limpiar texto .setName("Clean_Names"); // Nombrar nueva columna
Table summary = data .where(sales.isGreaterThan(1000)) // Filtrar filas .summarize("Sales", mean) // Agregar datos .by("Category"); // Agrupar resultados
Limpieza de datos en Java

Recursos

Limpieza de datos en Java

Listo para limpiar

Limpieza de datos en Java

Preparing Video For Download...