Tengo una pregunta que es de un nivel bastante alto, por lo que intentaré ser lo más específico posible.Coincidencia difusa de registros con varias columnas de información
Estoy haciendo una gran cantidad de investigación que implica combinar conjuntos de datos dispares con información de encabezado que se refiere a la misma entidad, generalmente una empresa o una seguridad financiera. Esta vinculación de registros generalmente implica información de encabezado en la que el nombre es el único identificador principal primario, pero donde a menudo hay disponible información secundaria (como ciudad y estado, fechas de operación, tamaño relativo, etc.). Estas coincidencias suelen ser uno a muchos, pero pueden ser uno a uno o incluso muchos a muchos. Por lo general, he hecho esta coincidencia a mano o con una comparación de texto muy básico de las subcadenas limpias. De vez en cuando, he usado un algoritmo de coincidencia simple, como la medida de distancia de Levenshtein, pero nunca obtuve mucho, en parte porque no tenía una buena forma formal de aplicarlo.
Supongo que esta es una pregunta bastante común y que debe haber algunos procesos formalizados que se han desarrollado para hacer este tipo de cosas. He leído algunos artículos académicos sobre el tema que tratan sobre la adecuación teórica de enfoques dados, pero no he encontrado ninguna buena fuente que repase una receta o, al menos, un marco práctico.
Mi pregunta es la siguiente:
¿Alguien sabe de una buena fuente para la implementación multidimensional difusa correspondiente registro, como un libro o un sitio web o un artículo publicado o documento de trabajo?
Prefiero algo que tenga ejemplos prácticos y un enfoque bien definido.
El enfoque podría ser iterativo, con controles humanos para la mejora en las etapas intermedias.
(edit) Los datos vinculados se utilizan para el análisis estadístico. Como tal, un poco de ruido está bien, pero hay una fuerte preferencia por un menor número de "coincidencias incorrectas" por un menor número de "incorrectos no coincidentes".
Si estuvieran en Python eso sería fantástico, pero no es necesario.
Una última cosa, si es importante, es que no me importa mucho la eficiencia computacional. No estoy implementando esto dinámicamente y generalmente estoy lidiando con unos miles de registros.
¿Cuán importante es para usted evitar coincidencias erróneas/falsos positivos? – Tim
Buena pregunta. Yo diría que es muy importante. Hago el emparejamiento para realizar un análisis estadístico. Como tal, un poco de ruido está bien, pero hay una fuerte preferencia por un menor número de "coincidencias incorrectas" por un menor "incorrecto no coincidente". Idealmente, podría ajustar la agresividad. – WildGunman