← Volver a proyectos

Algoritmia · Open source

mdapy-v2

Implementación mantenida y optimizada en Python del algoritmo de máxima disimilitud para seleccionar subconjuntos representativos.

Python · NumPy · Numba · uv · PyPI · Testing

Identidad visual del proyecto mdapy-v2

El problema

Seleccionar muestras diversas de conjuntos de datos grandes, tratando correctamente variables direccionales y mejorando las limitaciones de rendimiento, validación y API de la implementación original.

Mi aportación

Autor de la implementación original en IHCantabria y mantenedor actual de su evolución como proyecto personal, con una API revisada, comprobaciones de corrección, ejemplos y optimizaciones.

Resultado

Paquete publicado en PyPI y mantenido activamente. En el benchmark documentado de 140.256 observaciones y 20 selecciones, el tiempo mediano bajó de 32,63 a 0,067 segundos.

Decisiones técnicas

  • API basada en DataColumn, con validaciones explícitas y compatibilidad separada para la interfaz anterior.
  • Motor NumPy optimizado como opción predeterminada y aceleración opcional mediante Numba.
  • Benchmarks reproducibles que verifican los índices seleccionados antes de medir el rendimiento.

Enlaces