Dubbele rijen verwijderen

Ondersteund in Tableau Prep Builder-versie 2024.1 en later, en op het web in Tableau Cloud.

Dubbele data hebben gevolgen hebben voor de kwaliteit van uw data, ze vertekenen de voorspellingsresultaten en vormen een verspilling van opslagruimte. Door duplicaten te verwijderen, zorgt u ervoor dat elke waarde uniek is en dat uw data nauwkeurig worden weergegeven. De eerste stap bij het verwijderen van duplicaten is het identificeren van de dubbele rijen in uw data. Nadat u duplicaten hebt geïdentificeerd, kunt u deze uit de workflow verwijderen.

Duplicaten identificeren en verwijderen

Tableau Prep identificeert een dubbele rij als een rij waarvoor er minstens één andere rij met dezelfde waarden bestaat.

Ga als volgt te werk om dubbele rijen te identificeren en te verwijderen.

  1. (Optioneel) Voor Excel- en tekstbestanden kunt u op de stap Invoer klikken en een veld Bronrijnummer toevoegen om rijen te sorteren op de oorspronkelijke databron. Zie Het veld Bronrijnummer toevoegen aan uw flow en Sorteervolgorde voor het berekende veld voor meer informatie.
  2. Klik op een andere stap dan Invoer of Uitvoer.
  3. Identificeer de dubbele rijen.
    • Als u de dubbele rijen in alle velden wilt identificeren, klikt u op de werkbalk op Dubbele rijen identificeren.
    • Als u dubbele rijen in specifieke velden wilt identificeren, selecteert u een of meer velden en klikt u vervolgens op Dubbele rijen identificeren. Desgewenst kunt u in het deelvenster Profiel klikken op het menu Meer opties van het geselecteerde veld en Dubbele rijen identificeren selecteren.

    In het deelvenster Wijzigingen wordt een berekend veld gemaakt en weergegeven. Het berekende veld bevat een beschrijving en de namen van de velden die de dubbele rijen beslaan. In het dataraster ziet u welke rijen uniek zijn en welke rijen duplicaten zijn.

    De volgende afbeelding toont de resultaten als u de twee velden Regio en Artikeltype selecteert om alleen de dubbele rijen voor de geselecteerde velden te identificeren.

    Als er een bronrijnummer beschikbaar is, wordt dit gebruikt om de volgorde van de rijen te sorteren. Zo niet, dan worden rijen gesorteerd op basis van het eerste veld in het tabelschema. Als u de waarden in het berekende veld wilt wijzigen, kunt u de berekening rechtstreeks bewerken of uw eigen berekening schrijven. Zie Sorteervolgorde voor het berekende veld.

  4. Om dubbele rijen te evalueren, klikt u op Duplicaat of Uniek in het dataraster of in het veld 'Is dubbele rij?'
  5. De volgende afbeelding toont dubbele rijen in alle velden.

    De volgende afbeelding toont alleen dubbele rijen in de velden Regio en Artikeltype

  6. Als u een filter wilt instellen om alleen de unieke rijen te behouden, klikt u op Uniek in het dataraster of in het veld 'Is dubbele rij?' en selecteert u Alleen deze behouden op de werkbalk. Desgewenst kunt u klikken op Uniek in het dataraster of in het veld 'Is dubbele rij?' en klikt u vervolgens met de rechtermuisknop om de optie Alleen deze behouden te selecteren.

    U kunt ook eerst Duplicaat en vervolgens Uitsluiten selecteren om de data te filteren op dubbele waarden. Dit levert dezelfde resultaten op als wanneer u Uniek en Alleen deze behouden selecteert, en is niet van invloed op welke rijen worden uitgesloten of behouden.

    In het deelvenster Wijzigingen wordt een filter gemaakt om aan te geven dat alleen unieke rijen worden behouden en dat dubbele rijen worden uitgesloten.

  7. Klik in het berekende veld 'Is dubbele rij?' op het menu Meer opties en selecteer Verwijderen.

    De dubbele rijen worden verwijderd wanneer u de flow uitvoert en een uitvoer maakt.

    Opmerking: Verwijder het berekende veld 'Is dubbele rij?' niet als u aanpassingen gaat doen voor steekproefdata.

Dubbele waarden in steekproefdata

Dubbele rijen worden mogelijk niet weergegeven in de steekproefdata en kunnen een vertekening in het model veroorzaken.

Ga als volgt te werk om dubbele rijen in steekproefdata aan te pakken:

  1. Verwijder het berekende veld Is een dubbele rij? als u aanpassingen wilt maken voor steekproefdata. Hiermee krijgt u de mogelijkheid om de steekproefomvang te wijzigen of de steekproefdata in de invoerstap aan te passen.
  2. Pas de steekproefomvang aan om zoveel mogelijk data te laden voor rijselectie. Zie Grootte van datasteekproef instellen.
  3. Duplicaten worden mogelijk niet weergegeven in de steekproefdata, afhankelijk van de grootte van de steekproef. Met de optie Alleen deze behouden voor unieke rijen kunt u dubbele rijen verwijderen, ook als ze niet zichtbaar zijn in de steekproefdata.

Sorteervolgorde voor het berekende veld

Standaard worden rijen die dezelfde waarde bevatten, gesorteerd op het eerste veld of, indien beschikbaar, op het bronrijnummer. De velden worden gebruikt om de eerste rij te identificeren als Uniek en de overige als Duplicaat. Door de sorteervolgorde van velden te wijzigen, kunt u opgeven welke dubbele rij u als uniek wilt identificeren. U kunt de volgorde wijzigen door de berekening te bewerken en het veld ORDERBY aan te passen.

Bijvoorbeeld:

IF ({PARTITION [Field1], [Field2], [Field3]: { ORDERBY [FieldName] ASC: ROW_NUMBER() } } = 1) THEN 'Unique' ELSE 'Duplicate' END

Voor Excel- en tekstbestanden kunt u sorteren op de oorspronkelijke databron door het veld Bronrijnummer toe te voegen.

Bijvoorbeeld:

IF ({PARTITION [Source Row Number], [Field1], [Field2], [Field3]: { ORDERBY [Source Row Number] DESC: ROW_NUMBER() } } = 1) THEN 'Unique' ELSE 'Duplicate' END

Zie Het veld Bronrijnummer toevoegen aan uw flow voor meer informatie.

Uw eigen filterberekening schrijven om duplicaten te vinden en te verwijderen

U kunt een eigen filterberekening schrijven voor meerdere velden om zo duplicaten te vinden en te verwijderen.

De volgende filterberekening retourneert alleen resultaten die de waarde True retourneren. De berekening retourneert True of False op basis van de velden die zijn gebruikt voor PARTITION

{PARTITION [Field1], [Field2], [Field3]: { ORDERBY [Field1] DESC: ROW_NUMBER() } } = 1

Gebruik CASE of IF voor het identificeren van dubbele berekeningen

U kunt de functies IF of CASE in de berekeningseditor gebruiken. Bijvoorbeeld:

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