J'ai une base de données, constituée d'un ensemble d'enregistrements (environ 600 000) dont certains champs sont manquants. Mon but est de trouver un moyen de prédire ce que les valeurs de données manquantes devraient être (afin que je puisse les remplir) en fonction des données existantes. Une option que je regarde est la mise en grappe - ie représenter les enregistrements qui sont tous complets en tant que points dans un espace, en recherchant des groupes de points, puis quand on donne un enregistrement avec des valeurs de données manquantes, essayer de savoir s'il y a Toutes les grappes qui pourraient appartenir à cette catégorie sont cohérentes avec les valeurs de données existantes. Cependant, cela peut ne pas être possible parce que certains des champs de données sont sur une échelle nominale (par exemple la couleur) et ne peuvent donc pas être mis en ordre. Une autre idée que j'ai eue est de créer une sorte de modèle probabiliste qui permettrait de prédire les données, de les former sur les données existantes, puis de les utiliser pour extrapoler.Prédire les valeurs de données manquantes dans une base de données
Quels algorithmes sont disponibles pour faire ce qui précède, et existe-t-il un logiciel disponible gratuitement qui implémente ces algorithmes (Ce logiciel va être en C# d'ailleurs).
Énorme problème. Très dépendante de beaucoup de choses que nous ne pouvons pas prédire. Instance la plus simple: existe-t-il des biais de sélection dans lesquels les enregistrements ont des champs manquants? Comment le sais-tu? Que peux-tu y faire? Existe-t-il des indicateurs proxy disponibles? Et ainsi de suite ... – dmckee
D'accord avec le commentaire ci-dessus. Il y a peut-être des algorithmes généraux que vous pourriez utiliser, mais vous devrez personnaliser chacun d'entre eux dans votre domaine. – job