Tengo una base de datos, que consiste en un montón de registros (alrededor de 600,000) donde algunos de los registros tienen ciertos campos faltantes. Mi objetivo es encontrar una manera de predecir cuáles deberían ser los valores de datos faltantes (para poder completarlos) en función de los datos existentes.Predicción de valores de datos faltantes en una base de datos
Una opción que estoy buscando es la agrupación, es decir, representar los registros que están completos como puntos en algún espacio, buscar agrupaciones de puntos y luego, cuando se da un registro con valores de datos faltantes, intentar averiguar si hay los clústeres que podrían pertenecer que sean consistentes con los valores de datos existentes. Sin embargo, esto puede no ser posible porque algunos de los campos de datos están en una escala nominal (por ejemplo, color) y, por lo tanto, no se pueden ordenar.
Otra idea que tuve fue crear algún tipo de modelo probabilístico que pudiera predecir los datos, entrenarlos en los datos existentes y luego usarlos para extrapolarlos.
Qué algoritmos hay disponibles para hacer lo anterior, y hay algún software disponible que implemente esos algoritmos (este software va a estar en C# por cierto).
Enorme problema. Muy dependiente de muchas cosas que no podemos predecir. La instancia más simple: ¿hay algún sesgo de selección en el que los registros tengan campos faltantes? ¿Cómo lo sabes? ¿Qué puedes hacer al respecto? ¿Hay indicadores proxy disponibles? Y así sucesivamente ... – dmckee
Estoy de acuerdo con el comentario anterior. Puede haber algunos algoritmos generales, ideas que podrías usar, pero tendrías que personalizar cada una de ellas en tu dominio. – job