martes, 27 de octubre de 2015

Detectar duplicados y eliminarlos


Escrito por el Prof. Florentino Jorge Menendez

El tratamiento más sencillo es con sólo dos instrucciones:

duplicate list (Acá te lista las observaciones duplicadas en todas las variables)
duplicate drop (Acá te borra observaciones de tal forma que te queda solo una).

Si quisieras eliminar los casos duplicados, que aparecen en una variable y con ella sus datos (otras columnas). La sintaxis seria duplicates drop var1, force. Se le agrega el force, para poder eliminar los duplicados. 

Si vos tuvieras miedo de tener observaciones repetidas en una variable de identificación, que por cualquier razón (error de tipeo por ejemplo) no fuera igual en todas las variables, las podés trabajar con:

duplicates list id (Esto te da si están repetidas en id)
duplicates tag id, gen(id_dupl) (Esto pone un 1 en la variable id_dupl, para poder mirar qué pasa con esas observaciones)

list if id_dupl == 1  (Para ver en qué difieren las variables de observaciones que tienen mismo id)

Con la sintaxis db duplicates, te accede a la seleccion de las diferentes cuadros de menus posibles para manejar duplicados. tag, drop, example, report...

Los diferentes cuadros de menu para trabajar los duplicados:

*db duplicates 


Preserve y restore

Antes de eliminar alguna variable o eliminar determiandas observaciones, se puede tener un respaldo de la base antes de realizar cualquier acciones antes mencionadas. Estos comandos permiten guardar la base de datos tal como se encuentra. 

  • preserve toma una foto de la base de datos y se pueden realizar modificaciones en la base. Si se quiere revertir se hace restore.


1 comentario:

  1. Hola Prof. Florentino Jorge Menendez. Tengo una consulta, tengo una base de datos de aproximadamente 12 mil sujetos. Una de las variables que manejo es el reingreso hospitalario de esos sujetos, por lo tanto dentro de mi base de datos, los registros para los sujetos se van a repetir ocasionando los reingresos de cada paciente, mi pregunta es, cómo puedo buscar los datos duplicados de ese sujeto y los ubico como un solo registro del caso?

    ResponderEliminar