Ho un database, costituito da un gruppo di record (circa 600.000) in cui alcuni record mancano di alcuni campi. Il mio obiettivo è trovare un modo per prevedere quali dovrebbero essere i valori dei dati mancanti (in modo che io possa riempirli) in base ai dati esistenti.Prevedere valori di dati mancanti in un database
Un'opzione che sto osservando è il clustering, ovvero i record che sono tutti completi come punti in qualche spazio, alla ricerca di cluster di punti, e quindi quando viene assegnato un record con valori di dati mancanti, prova a scoprire se ci sono tutti i cluster che potrebbero appartenere sono coerenti con i valori dei dati esistenti. Tuttavia ciò potrebbe non essere possibile perché alcuni dei campi di dati sono su una scala nominale (ad esempio colore) e quindi non possono essere messi in ordine.
Un'altra idea che ho avuto è quella di creare una sorta di modello probabilistico che preveda i dati, li formuli sui dati esistenti e li utilizzi per estrapolare.
Quali algoritmi sono disponibili per fare quanto sopra, e c'è un software disponibile gratuitamente che implementa tali algoritmi (questo software sarà in C# tra l'altro).
Enorme problema. Molto dipendente da molte cose che non possiamo prevedere. L'istanza più semplice: ci sono dei bias di selezione in cui i record hanno campi mancanti? Come lo sai? Cosa puoi fare a riguardo? Sono disponibili indicatori proxy? E così via ... – dmckee
Accettando con il commento sopra. Potrebbero esserci alcuni algoritmi generali che potresti usare, ma dovresti personalizzare ciascuno di essi nel tuo dominio. – job