Berekeningen voor detailniveau, rangschikking en tegels maken
Opmerking: Vanaf versie 2020.4.1 kunt u flows maken en bewerken in Tableau Server en Tableau Cloud. De inhoud van dit onderwerp is van toepassing op alle platforms, tenzij specifiek anders vermeld. Zie Tableau Prep op het web in de Help bij Tableau Server(Link wordt in een nieuw venster geopend) en Tableau Cloud(Link wordt in een nieuw venster geopend) voor meer informatie over flows maken op het web.
U kunt berekende velden gebruiken om nieuwe data maken op basis van data die al in uw databron aanwezig zijn. Tableau Prep ondersteunt veel van dezelfde berekeningstypen als Tableau Desktop. Zie Aan de slag met berekeningen in Tableau(Link wordt in een nieuw venster geopend) voor algemene informatie over het maken van berekeningen.
Opmerking: Wanneer u een berekend veld maakt, mag u niet de gereserveerde naam Aantal records gebruiken. Als u deze gereserveerde naam gebruikt, ontstaat er een machtigingsfout.
Vanaf versie 2020.1.3 van Tableau Prep Builder en op internet kunt u de analytische functies FIXED Level of Detail (LOD) en RANK en ROW_NUMBER gebruiken om complexere berekeningen uit te voeren.
Voeg bijvoorbeeld een FIXED LOD-berekening toe om de granulariteit van velden in uw tabel te wijzigen, gebruik de analytische functie ROW_NUMBER () om snel dubbele rijen te vinden of gebruik een van de RANK ()-functies om de bovenste N- of onderste N-waarden te vinden voor een selectie rijen met vergelijkbare data. Als u liever meer begeleid wordt bij het maken van dit soort expressies, kunt u de visuele berekeningseditor gebruiken.
Vanaf versie 2021.4.1 van Tableau Prep Builder en op internet kunt u de tegelfunctie gebruiken om rijen in een bepaald aantal buckets te verdelen.
Opmerking: Sommige functies die worden ondersteund in Tableau Desktop, worden mogelijk nog niet ondersteund in Tableau Prep. Bekijk de functielijst in de berekeningseditor om de beschikbare functies voor Tableau Prep te bekijken.
Detailniveau berekenen
Wanneer u data op meerdere niveaus van granulariteit in dezelfde tabel moet berekenen, kunt u hiervoor een LOD-expressie (Level of Detail) schrijven. Als u bijvoorbeeld de totale verkoop voor elke regio wilt weten, kunt u een berekening schrijven zoals {FIXED [Region] : SUM([Sales])}
.
Tableau Prep ondersteunt de FIXED-LOD-expressie en gebruikt de syntaxis {FIXED [Field1],[Field2] : Aggregation([Field)}
.
LOD-expressies bestaan uit twee delen van de vergelijking die gescheiden worden door een dubbele punt.
VAST [Veld] (verplicht): Dit is het veld of de velden waarvan u de waarden wilt berekenen. Als u bijvoorbeeld de totale verkoop per klant en regio wilt weten, voert u
FIXED [Customer ID], [Region]:
in. Als u geen velden selecteert, komt dit neer op het uitvoeren van de aggregatie die aan de rechterkant van de dubbele punt is gedefinieerd en het herhalen van die waarde voor elke rij.Aggregatie ([Veld]) (verplicht): Selecteer wat u wilt berekenen en welk aggregatieniveau u wilt. Als u bijvoorbeeld de totale verkoop wilt weten, voert u
SUM([Sales]
in.
Wanneer u deze functie in Tableau Prep gebruikt, zijn de volgende vereisten van toepassing:
INCLUDE
enEXCLUDE
LOD-expressies worden niet ondersteund.- Aggregatieberekeningen worden alleen ondersteund binnen een LOD-expressie. Bijvoorbeeld
SUM([Sales])
zou niet geldig zijn, maar{FIXED [Region] : SUM([Sales])}
is wel geldig. Het nesten van expressies binnen een LOD-expressie wordt niet ondersteund. Bijvoorbeeld
{ FIXED [Region] : AVG( [Sales] ) / SUM( [Profit] )}
wordt niet ondersteund.- Het combineren van een LOD-expressie met een andere expressie wordt niet ondersteund. Bijvoorbeeld
[Sales]/{ FIXED [Country / Region]:SUM([Sales])}
wordt niet ondersteund. Klik in de werkbalk van het deelvenster Profiel op Berekend veld maken, of klik in een profielkaart of dataraster op het menu Meer opties en selecteer Berekend veld maken > Aangepaste berekening.
Voer in de berekeningseditor een naam in voor uw berekening en voer de expressie in.
Om bijvoorbeeld het gemiddelde aantal dagen te berekenen waarop producten per stad verzonden moeten worden, kunt u een berekening maken zoals hieronder getoond.
Klik in een profielkaart of het deelvenster Resultaten op het menu Meer opties en selecteer Berekend veld maken >Vast LOD.
Doe het volgende in de visuele berekeningseditor:
- Selecteer in de sectie Groeperen op de velden waarvoor u de waarden wilt berekenen. Het veld waar u de menuoptie Berekend veld maken >Vast LOD hebt geselecteerd, is standaard toegevoegd. Klik op het pluspictogram om extra velden toe te voegen aan uw berekening. Dit vult de linkerkant van de vergelijking
{FIXED [Field1],[Field2] :
. Selecteer in de sectie Berekenen met het veld dat u wilt gebruiken om uw nieuwe waarden te berekenen. Selecteer vervolgens uw aggregatie. Dit vult de rechterkant van de vergelijking
Aggregation([Field)}
.Een grafiek onder het veld toont de verdeling van de waarden en een totaaltelling voor elke waardecombinatie. Afhankelijk van het type data kan dit een boxplot, een waardenbereik of de werkelijke waarden zijn.
Opmerking: De beschikbare aggregatiewaarden variëren afhankelijk van het datatype dat aan het veld is toegewezen.
Om een veld te verwijderen, klikt u met de rechtermuisknop of met Ctrl+Klik (MacOS) in het vervolgkeuzevak voor de velden in de sectie Groeperen op en selecteert u Veld verwijderen.
- Dubbelklik in het linkerdeelvenster op de veldkop en voer een naam in voor uw berekening.
- Selecteer in de sectie Groeperen op de velden waarvoor u de waarden wilt berekenen. Het veld waar u de menuoptie Berekend veld maken >Vast LOD hebt geselecteerd, is standaard toegevoegd. Klik op het pluspictogram om extra velden toe te voegen aan uw berekening. Dit vult de linkerkant van de vergelijking
Klik op Gereed om uw nieuwe berekende veld toe te voegen. In het deelvenster Wijzigingen ziet u de berekening die Tableau Prep heeft gegenereerd. Klik op Bewerken om de visuele berekeningseditor te openen en wijzigingen aan te brengen.
Detailniveau van berekeningen (LOD) maken
Om een detailniveau van berekeningen te maken, kunt u de berekeningseditor gebruiken om zelf een berekening te schrijven. Als u een meer begeleide ervaring wilt, kunt u de visuele berekeningseditor gebruiken, waarin u uw velden selecteert en Tableau Prep de berekening voor u schrijft.
Berekeningseditor
Visuele berekeningseditor
Selecteer velden uit een lijst en Tableau Prep maakt de berekening voor u terwijl u uw selecties maakt. In het linkerdeelvenster wordt een voorbeeld van de resultaten getoond, zodat u de resultaten van uw selecties direct kunt bekijken.
Rangschikking of rijnummer berekenen
Met analytische functies, soms ook wel vensterberekeningen genoemd, kunt u berekeningen uitvoeren op de gehele tabel of op een selectie rijen (partitie) in uw dataset. Wanneer u bijvoorbeeld een rangschikking toepast op een selectie rijen, gebruikt u de volgende berekeningssyntaxis:
{PARTITION [field]: {ORDERBY [field]: RANK() }}
PARTITION (optioneel): Geef aan op welke rijen u de berekening wilt uitvoeren. U kunt meer dan één veld opgeven, maar als u de volledige tabel wilt gebruiken, laat u dit onderdeel van de functie weg. Tableau Prep behandelt dan alle rijen als de partitie. Bijvoorbeeld
{ORDERBY [Sales] : RANK() }
.ORDERBY (verplicht): Geef een of meer velden op die u wilt gebruiken om de volgorde voor de rangschikking te genereren.
Rangschikking () (verplicht): Geef het type rangschikking of ROW_NUMBER () op dat u wilt berekenen. Tableau Prep ondersteunt de functies RANK(), RANK_DENSE(), RANK_MODIFIED(), RANK_PERCENTILE() en ROW_NUMBER().
DESC of ASC (optioneel): Geeft een aflopende (DESC) of oplopende (ASC) volgorde weer. Standaard wordt de rangschikking in aflopende volgorde gesorteerd. U hoeft dit dus niet in de expressie op te geven. Als u de sorteervolgorde wilt wijzigen, voegt u ASC toe aan de expressie.
U kunt ook beide opties in de functie opnemen. Als u bijvoorbeeld een selectie rijen wilt rangschikken, maar de rijen in oplopende volgorde wilt sorteren en vervolgens de rangschikking in aflopende volgorde wilt toepassen, moet u deze twee opties in de expressie opnemen. Bijvoorbeeld:
{PARTITION [Country], [State]: {ORDERBY [Sales] ASC,[Customer Name] DESC: RANK() }}
Bij gebruik van deze functie zijn de volgende vereisten van toepassing:
- Het nesten van expressies binnen een RANK ()-functie wordt niet ondersteund. Bijvoorbeeld
[Sales]/{PARTITION [Country]: {ORDERBY [Sales]: RANK() }} / SUM( [Profit] )}
wordt niet ondersteund. - Het combineren van een RANK ()-functie met een andere expressie wordt niet ondersteund. Bijvoorbeeld
[Sales]/{PARTITION [Country]: {ORDERBY [Sales]: RANK() }}
wordt niet ondersteund.
Ondersteunde analytische functies
Functie | Beschrijving | Resultaat |
---|---|---|
RANK () | Wijst aan elke rij een gehele nummerrangschikking toe, beginnend bij 1, in oplopende of aflopende volgorde. Als rijen dezelfde waarde hebben, delen ze de rangschikking die is toegewezen aan het eerste exemplaar van de waarde. Het aantal rijen met dezelfde rangschikking wordt toegevoegd bij het berekenen van de rangschikking voor de volgende rij. Het is dus mogelijk dat u geen opeenvolgende rangschikkingswaarden krijgt. Voorbeeldberekening: | |
RANK_DENSE() | Wijst aan elke rij een gehele nummerrangschikking toe, beginnend bij 1, in oplopende of aflopende volgorde. Als rijen dezelfde waarde hebben, delen ze de rangschikking die is toegewezen aan het eerste exemplaar van de waarde. Er worden echter geen rangschikkingswaarden overgeslagen, zodat u opeenvolgende rangschikkingswaarden ziet. Voorbeeldberekening: | |
RANK_MODIFIED() | Wijst aan elke rij een gehele nummerrangschikking toe, beginnend bij 1, in oplopende of aflopende volgorde. Als rijen dezelfde waarde hebben, delen ze de rangschikking die is toegewezen aan het laatste exemplaar van de waarde. Rank_Modified wordt berekend als Voorbeeldberekening: | |
RANK_PERCENTILE() | Wijst aan elke rij een percentiele rangschikking toe van 0 tot 1 in oplopende of aflopende volgorde. RANK_PERCENTILE wordt berekend als Voorbeeldberekening: Opmerking: Bij een gelijke waarde rondt Tableau Prep de rangschikking naar beneden af, vergelijkbaar met PERCENT_RANK() in SQL. | |
ROW_NUMBER() | Wijst een unieke sequentiële rij-ID toe aan elke unieke rij. Er worden geen rijnummerwaarden overgeslagen. Als u dubbele rijen hebt en deze berekening gebruikt, kunnen uw resultaten elke keer dat u de flow uitvoert, wijzigen als de volgorde van de rijen wijzigt. Voorbeeldberekening: |
Het volgende voorbeeld toont een vergelijking van elk van de bovenstaande functies toegepast op dezelfde dataset.
Berekeningen voor rangschikking of rijnummers maken
Om berekeningen van een rangschikking of Row_Number te maken, kunt u de berekeningseditor gebruiken om zelf een berekening te schrijven. Als u een meer begeleide ervaring wilt, kunt u de visuele berekeningseditor gebruiken, waarin u uw velden selecteert en Tableau Prep de berekening voor u schrijft.
Opmerking: ROW_NUMBER () berekeningen zijn niet beschikbaar in de visuele berekeningseditor.
Berekeningseditor
Gebruik de berekeningseditor om een van de ondersteunde RANK ()- of ROW_NUMBER()-berekeningen te maken. De lijst met ondersteunde analytische berekeningen wordt getoond in de berekeningseditor in de vervolgkeuzelijst Referentie onder Analytisch.
Klik in de werkbalk van het deelvenster Profiel op Berekend veld maken, of klik in een profielkaart of dataraster op het menu Meer opties en selecteer Berekend veld maken > Aangepaste berekening.
Voer in de berekeningseditor een naam in voor uw berekening en voer de expressie in.
Om bijvoorbeeld de laatste klantorder te vinden, maakt u een berekening zoals hieronder getoond en behoudt u alleen de rijen met klantorders die zijn gerangschikt met het nummer 1.
Voorbeeld: Gebruik ROW_NUMBER om dubbele waarden te zoeken en te verwijderen.
In dit voorbeeld wordt de steekproefdataset Superstore in Tableau Prep Builder gebruikt om exacte dubbele waarden voor het veld Rij-ID te zoeken en te verwijderen met behulp van de functie ROW_NUMBER.
Open de flow Voorbeeld Superstore.
In het deelvenster Flow klikt u voor de invoerstap Orders West op de opschoningsstap Naam staten wijzigen.
Klik in de werkbalk op Berekend veld maken.
Geef het nieuwe veld in de berekeningseditor de naam Duplicaten en gebruik de functie
ROW_NUMBER
om een rijnummer toe te voegen aan het veld Rij-ID met behulp van de expressie{PARTITION [Row ID]: {ORDERBY[Row ID]:ROW_NUMBER()}}
en klik op Opslaan.Klik in het nieuwe berekende veld met de rechtermuisknop of op Cmd+Klik (MacOS) op de veldwaarde 1 en selecteer Alleen deze behouden in het menu.
Voor Na
Visuele berekeningseditor
Net als bij het maken van een detailniveau van berekeningen, kunt u de visuele berekeningseditor gebruiken om een rangschikkingsberekening te maken. Selecteer de velden die u in de berekening wilt opnemen. Selecteer vervolgens de velden die u wilt gebruiken om de rijen te rangschikken en het type rangschikking dat u wilt berekenen. In het linkerdeelvenster wordt een voorbeeld van de resultaten getoond, zodat u de resultaten van uw selecties direct kunt bekijken.
Klik in een profielkaart of het deelvenster Resultaten op het menu Meer opties en selecteer Berekend veld maken >Rangschikking.
Doe het volgende in de visuele berekeningseditor:
Selecteer in de sectie Groeperen op de velden met rijen waarvoor u waarden wilt berekenen. Hiermee wordt het Partitie-deel van de berekening gemaakt.
Nadat u uw eerste veld hebt geselecteerd, klikt u op het pluspictogram om extra velden toe te voegen aan uw berekening. Als u alle rijen wilt opnemen of een geselecteerd veld wilt verwijderen, klikt u met de rechtermuisknop of op Cmd+Klik (MacOS) in het vervolgkeuzevak voor de velden in de sectie Groeperen op en selecteert u Veld verwijderen.
Selecteer in de sectie Ordenen op de velden die u wilt gebruiken om uw nieuwe waarden te rangschikken. Het veld waar u de menuoptie Berekend veld maken >Rangschikking hebt geselecteerd, is standaard toegevoegd.
Klik op het pluspictogram om extra velden toe te voegen aan uw berekening en selecteer vervolgens uw type Rangschikking. Klik op het sorteerpictogram om de rangschikking te wijzigen van aflopend (DESC) naar oplopend (ASC).
Opmerking: Rangschikkingswaarden variëren afhankelijk van het datatype dat aan het veld is toegewezen.
Dubbelklik in het linkerdeelvenster op de veldkop en voer een naam in voor uw berekening.
Klik op Gereed om uw nieuwe berekende veld toe te voegen. In het deelvenster Wijzigingen kunt u de berekening zien die Tableau Prep Builder heeft gegenereerd. Klik op Bewerken om de visuele berekeningseditor te openen en wijzigingen aan te brengen.
Tegels berekenen
Met de tegelfunctie kunt u rijen verdelen over een bepaald aantal buckets door een berekend veld te maken. U selecteert de velden waarover u wilt verdelen en het aantal groepen (tegels) dat u wilt gebruiken. U kunt ook extra velden selecteren voor het maken van partities waarbij de tegelrijen in groepen worden verdeeld. Gebruik de berekeningseditor om de syntaxis handmatig in te voeren of gebruik de visuele berekeningseditor om de velden te selecteren, waarna Tableau Prep de berekening voor u schrijft.
Als u bijvoorbeeld rijen met studentdata hebt en wilt zien welke studenten tot de bovenste 50% en onderste 50% behoren, kunt u de data in twee tegels groeperen.
Het volgende voorbeeld toont twee groepen voor de bovenste en onderste helft van de cijfers van studenten. De syntaxis voor deze methode is:
{ORDERBY [Grade] DESC:NTILE(2)}
U kunt ook een partitie maken, waarbij elke waarde van een veld een aparte partitie is, en de data voor elke partitie in groepen verdelen.
Het volgende voorbeeld laat zien hoe u partities maakt voor het veld Onderwerp. Voor elk onderwerp wordt een partitie gemaakt en voor het veld Cijfer worden twee groepen (tegels) gemaakt. De rijen worden vervolgens gelijkmatig verdeeld over de twee groepen voor de drie partities. De syntaxis voor deze methode is:
{PARTITION [Subject]:{ORDERBY [Grade] DESC:NTILE(2)}}
Tegelberekeningen maken
Om tegelberekeningen te maken, kunt u de berekeningseditor gebruiken om zelf een berekening te schrijven. Als u een meer begeleide ervaring wilt, kunt u de visuele berekeningseditor gebruiken, waarin u uw velden selecteert en Tableau Prep de berekening voor u schrijft.
Visuele berekeningseditor
Wanneer u de visuele berekeningseditor gebruikt om een tegelberekening te maken, wordt in het linkerdeelvenster een voorbeeld van de resultaten weergegeven.
Selecteer een profielkaart om een tegelberekening te maken.
Klik op het menu Meer opties en selecteer Berekend veld maken > Tegel.
De geselecteerde profielkaart wordt toegevoegd als een ORDERBY-veld.
Doe het volgende in de visuele berekeningseditor:
Selecteer het aantal tegelgroeperingen dat u wilt. De standaardwaarde voor Tegels is 1.
Selecteer in de sectie Groeperen op de velden voor de rijen waarvoor u waarden wilt berekenen. Hiermee wordt het onderdeel
PARTITION
van de berekening gemaakt. U kunt meerdere velden Groeperen op gebruiken voor één berekening.Klik op het pluspictogram om extra velden toe te voegen aan uw berekening. Als u alle rijen wilt opnemen of een geselecteerd veld wilt verwijderen, klikt u met de rechtermuisknop of op Cmd+Klik (MacOS) in het vervolgkeuzevak voor de velden in de sectie Groeperen op en selecteert u Veld verwijderen.
Dubbelklik in het linkerdeelvenster op de veldkop en voer een naam in voor uw berekening.
Selecteer in de sectie Ordenen op een of meer velden die u wilt gebruiken om uw nieuwe waarden te groeperen en te distribueren. U moet minimaal één veld Ordenen op hebben. Het veld waar u de menuoptie Berekend veld maken >Tegel hebt geselecteerd, is standaard toegevoegd.
Om de resultaten te sorteren, doet u het volgende:
Klik op een van de Berekeningsrijen om de resultaten voor de geselecteerde groepering te filteren
Wijzig de oplopende of aflopende volgorde van het veld Ordenen op.
Klik op Gereed om uw nieuwe berekende veld toe te voegen.
In het deelvenster Wijzigingen ziet u de berekening die Tableau Prep Builder heeft gegenereerd. Klik op Bewerken om de visuele berekeningseditor te openen en wijzigingen aan te brengen.
Het volgende voorbeeld toont een kwartielverdeling van rijen. Er wordt een partitie gemaakt op basis van vier regio's in de VS en vervolgens worden de data uit het veld Verkoop gelijkmatig over de partities gegroepeerd.
Berekeningseditor
Klik in de werkbalk van het deelvenster Profiel op Berekend veld maken of klik in een profielkaart of dataraster op het menu Meer opties en selecteer Berekend veld maken > Aangepaste berekening.
Voer in de berekeningseditor een naam in voor uw berekening en voer de expressie in. Om bijvoorbeeld rijen studenten per cijfers in twee groepen te ordenen en ze vervolgens per onderwerp te groeperen, gebruikt u:
{PARTITION [Subject]:{ORDERBY [Grade] DESC:NTILE(2)}}
.Tegelberekeningen bevatten de volgende elementen:
PARTITION (optioneel): Een partitieclausule verdeelt de rijen van een set met resultaten in partities waarvoor de NTILE()-functie wordt gebruikt.
ORDERBY (verplicht) De ORDER BY-clausule definieert de distributie van rijen in elke partitie waarvoor NTILE() wordt gebruikt.
NTILE (verplicht): NTILE is het gehele getal waarin de rijen worden verdeeld.
Opmerking: Wanneer alle rijen deelbaar zijn door de NTILE-clausule, verdeelt de functie de rijen gelijkmatig over het aantal tegels. Wanneer het aantal rijen niet deelbaar is door de NTILE-clausule, worden de resulterende groepen verdeeld in bins van verschillende grootte.
DESC of ASC (optioneel): Geeft een aflopende (DESC) of oplopende (ASC) volgorde weer. Standaard wordt de tegel in aflopende volgorde gesorteerd. U hoeft dit dus niet in de expressie op te geven. Als u de sorteervolgorde wilt wijzigen, voegt u ASC toe aan de expressie.
Klik op Opslaan.
Het gegenereerde veld toont de toewijzingen van de tegelgroeperingen (bins) die aan elke rij in de tabel zijn gekoppeld.