Quitar filas duplicadas
Compatible con la versión 2024.1 y posteriores de Tableau Prep Builder y en la web en Tableau Cloud.
Los datos duplicados pueden tener un impacto en la calidad de sus datos, sesgar los resultados de predicción y desperdiciar espacio de almacenamiento. La eliminación de duplicados garantiza que cada valor sea único, proporcionando una representación precisa de sus datos. El primer paso para eliminar duplicados es identificar las filas duplicadas en sus datos. Una vez que haya identificado duplicados, podrá eliminarlos del flujo de trabajo.
Identificar y eliminar duplicados
Tableau Prep identifica un duplicado como cualquier fila que tenga al menos otra fila con los mismos valores.
Para identificar y eliminar filas duplicadas.
- (Opcional) Para Excel y archivos de texto, puede hacer clic en el paso Entrada y agregar un campo Número de fila de origen para ordenar las filas según la fuente de datos original. Para obtener más información, consulte Agregar el campo Número de fila de origen a su flujo y Orden de clasificación para el campo calculado.
- Haga clic en cualquier paso que no sea un paso de Entrada o Salida.
- Identificar filas duplicadas.
- Para identificar filas duplicadas en todos los campos, desde la barra de herramientas, haga clic en Identificar filas duplicadas.
- Para identificar filas duplicadas en campos específicos, seleccione uno o más campos y luego haga clic en Identificar filas duplicadas. Opcionalmente, en el panel de perfil, puede hacer clic en el menú Más opciones del campo seleccionado y seleccione Identificar filas duplicadas.
Se crea un campo calculado y se enumera en el panel Cambios. El campo calculado proporciona una descripción y los nombres de los campos que abarcan las filas duplicadas. La cuadrícula de datos muestra qué filas son únicas y cuáles están duplicadas.
La siguiente imagen muestra los resultados de seleccionar los dos campos Región y Tipo de elemento para identificar filas duplicadas solo en los campos seleccionados.
Si hay un número de fila de origen disponible, se utiliza para ordenar las filas. De lo contrario, las filas se ordenan según el primer campo del esquema de la tabla. Para cambiar los valores en el campo calculado, puede editar directamente el cálculo o escribir su propio cálculo. Consulte Orden de clasificación para el campo calculado.
- Para evaluar filas duplicadas, haga clic en Duplicada o Única en el campo ¿Fila duplicada? o en la cuadrícula de datos.
- Para filtrar y conservar solo las filas únicas, haga clic en Única en la cuadrícula de datos o en el campo ¿Fila duplicada? y seleccione Mantener solamente desde la barra de herramientas. Opcionalmente, puede hacer clic en Única en la cuadrícula de datos o en el campo ¿Fila duplicada?, luego haga clic derecho para seleccionar Mantener solamente.
También puede seleccionar Duplicada y luego seleccionar Excluir para filtrar datos en busca de duplicados. Esto produce los mismos resultados que seleccionar Única y Mantener solamente, y no afecta a qué filas se excluyen o se mantienen.
Se crea un filtro en el panel de cambios que muestra que solo se mantienen las filas únicas y se excluyen las filas duplicadas.
- Desde el campo calculado ¿Fila duplicada?, haga clic en el menú Más opciones y seleccione Eliminar.
Las filas duplicadas se eliminan cuando ejecuta el flujo y crea una salida.
Nota: No elimine el campo calculado ¿Fila duplicada? si va a ajustar los datos de muestra.
La siguiente imagen muestra filas duplicadas en todos los campos.
La siguiente imagen muestra filas duplicadas solo en los campos Región y Tipo de elemento.
Duplicados en datos de muestra
Es posible que no aparezcan filas duplicadas en los datos de muestra y podrían introducir un sesgo en el modelo.
Para abordar datos de muestra de filas duplicadas:
- No elimine el campo calculado ¿Fila duplicada? si va a ajustar los datos de muestra. Esto le brinda la opción de cambiar el tamaño de la muestra o ajustar los datos de la muestra en el paso de entrada.
- Ajuste el tamaño de la muestra para cargar tantos datos como sea posible para la selección de filas. Consulte Definir el tamaño de la muestra de datos.
- Es posible que no aparezcan duplicados en los datos de muestra según el tamaño de la muestra. Utilizar la opción Mantener solamente para filas únicas le permite eliminar filas duplicadas, incluso si no son visibles en los datos de muestra.
Orden de clasificación para el campo calculado
De forma predeterminada, si varias filas contienen el mismo valor, se ordenan por el primer campo o, si está disponible, por el número de fila de origen. Los campos se utilizan para identificar la primera fila como Única y el resto como Duplicada. Cambiar el orden de clasificación de los campos le permite especificar qué fila duplicada desea identificar como única. Puede realizar cambios en el orden editando el cálculo y cambiando el campo ORDERBY
.
Por ejemplo:
IF ({PARTITION [Field1], [Field2], [Field3]: { ORDERBY [FieldName] ASC: ROW_NUMBER() } } = 1) THEN 'Unique' ELSE 'Duplicate' END
Para archivos de Excel y de texto, puede ordenar por la fuente de datos original agregando un campo Número de fila de fuente.
Por ejemplo:
IF ({PARTITION [Source Row Number], [Field1], [Field2], [Field3]: { ORDERBY [Source Row Number] DESC: ROW_NUMBER() } } = 1) THEN 'Unique' ELSE 'Duplicate' END
Para obtener más información, consulte Añadir el campo de número de fila de origen a los flujos.
Escribir su propio cálculo de filtro para buscar y eliminar duplicados
Puede escribir su propio cálculo de filtro en varios campos para buscar y eliminar duplicados.
El siguiente cálculo de filtro solo devolverá resultados que devuelvan Verdadero. El cálculo devuelve Verdadero o Falso según los campos utilizados para PARTITION
{PARTITION [Field1], [Field2], [Field3]: { ORDERBY [Field1] DESC: ROW_NUMBER() } } = 1
Use CASE
o IF
para identificar cálculos duplicados
Puede usar las funciones IF
o CASE
en el editor de cálculo. Por ejemplo:
CASE {PARTITION [Field1], [Field2], [Field3] : { ORDERBY [[Field3]]: ROW_NUMBER() } } = 1 WHEN TRUE THEN 'UNIQUE' ELSE 'DUPLICATE' END
IF ({PARTITION [[Field1]], [[Field2]], [[Field3]]: { ORDERBY [[Field3]] DESC: ROW_NUMBER() } } = 1) THEN 'Unique' ELSE 'Duplicate' END