[R-es] Optimización identificación de casos similares
Jesús Para Fernández
j@p@r@@|ern@ndez @end|ng |rom hotm@||@com
Jue Feb 7 17:31:08 CET 2019
Pues a mi se me ocurre algo chapuceril psp que puede funcionar.
Separas cada dni ponkendo cada n�mero en una columna.
A continuaci�n calculas las distancias y te quedas con aquellos cuya distancia sea menor o igual a nueve.
Tendras mucho falso positivo, eso si, pero se podria afinar mas....
Obtener Outlook para Android<https://aka.ms/ghei36>
________________________________
From: R-help-es <r-help-es-bounces using r-project.org> on behalf of David Contreras <davidcontreras00 using gmail.com>
Sent: Thursday, February 7, 2019 5:23:45 PM
To: r-help-es
Subject: [R-es] Optimizaci�n identificaci�n de casos similares
Buen d�a a todos,
Agradezco su ayuda con lo siguiente:
Tengo 100.000 registros con nombres de personas con su respectivo n�mero de
documento, quiero identificar casos que tengan un porcentaje de igualdad
alto, no del 100% porque ya esos los tengo identificados, sino casos como
por ejemplo:
Nombre: Juan P�rez Documento: 123456789
Nombre: Juan P�rez Documento: 1234056789
Este caso ser�a una alerta de posible duplicado y tendr�a que revisarse
porque posiblemente en uno de los dos casos se ingreso errado el n�mero de
documento.
Para calcular esta diferencia uso la funci�n adist del paquete (utils), el
problema es que la forma en que tengo el c�digo para revisar los 100.000
casos, la m�quina no lo soporta por los recorridos que se hacen:
*El dataframe se llama Citacion.*
*Citacion[,"NombreDoc"]<- paste0(Citacion[,"NOMBRE"]," ",
Citacion[,"DOCUMENTO"]) # Concatena Nombre y documento*
*Citacion[,"RNomDoc1"]<-0*
*Citacion[,"RNomDoc2"]<-0*
*ii<-1*
*for(ii in 1:(nrow(Citacion)-1)){*
* jj<-ii+1*
* while(jj<=nrow(Citacion)){*
* if (adist(Citacion[ii,"NombreDoc"],
Citacion[jj,"NombreDoc"])/nchar(Citacion[ii,"NombreDoc"])<0.15){ #
Criterio para marcar los posibles casos duplicados*
* Citacion[ii,"RNomDoc1"]<-1*
* Citacion[jj,"RNomDoc2"]<-1*
* jj<-jj+1*
* } else {*
* Citacion[jj,"RNomDoc2"]<-0*
* jj<-jj+1*
* } *
* } *
*} *
La idea es optimizar el c�digo de alguna forma para agilizar el proceso y
lograr que se identifiquen los casos a revisar.
Mil gracias de nuevo.
[[alternative HTML version deleted]]
_______________________________________________
R-help-es mailing list
R-help-es using r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es
[[alternative HTML version deleted]]
Más información sobre la lista de distribución R-help-es