Het juiste berekeningstype kiezen

Het type berekening dat u kiest, hangt af van de behoeften van uw analyse, de vraag die u wilt beantwoorden en de lay-out van uw visualisatie.

Welke berekening past bij uw analyse?

Het kiezen van het type berekening dat u voor uw analyse wilt gebruiken, is niet altijd eenvoudig. Overweeg bij het maken van die keuze de volgende vragen en voorbeelden.

Opmerking: Deze inhoud is oorspronkelijk gepubliceerd op de Tableau Blog. Ga naar Een handige gids voor het kiezen van de juiste berekening voor uw vraag(Link wordt in een nieuw venster geopend) om de blog te lezen.


Basisexpressie of tabelberekening?

Vraag 1:

Hebt u reeds alle datawaarden die u nodig hebt voor de visualisatie?

  • Is het antwoord ja: u kunt een tabelberekening gebruiken.
  • Is het antwoord nee: gebruik een basisberekening.

Een stroomdiagram waarmee u kunt bepalen of u een tabelberekening of een basisexpressie wilt gebruiken, afhankelijk van de vraag of alle datawaarden in de visualisatie aanwezig zijn. Gebruik een basisexpressie als u reeds over alle datawaarden beschikt die u nodig hebt voor de visualisatie. Gebruik een tabelberekening als dat niet het geval is.

Voorbeeld:

Kijk eens naar de volgende twee visualisaties. De visualisatie aan de linkerkant is een staafdiagram dat de totale verkoop per land/regio weergeeft. De visualisatie aan de rechterkant toont ook de verkopen per land/regio, maar de verkopen zijn gedesaggregeerd.

Hoe kunt u het 90e percentiel van de verkoop voor elk van deze visualisaties berekenen?

Twee diagrammen geven de verkoop per land/regio weer. Het ene is een staafdiagram en het andere is een spreidingsdiagram.

Het staafdiagram aan de linkerkant is geaggregeerd op SUM. Daarom bevat deze weergave niet voldoende details om een tabelberekening te gebruiken. U kunt in dit voorbeeld een basisexpressie voor aggregatie gebruiken om het 90e percentiel van de verkoop voor elk land te berekenen met behulp van de volgende formule:

PERCENTILE([Sales], .90)

Dit resulteert in een waarde voor het 90e percentiel per land als label voor elke staaf.

Een horizontaal staafdiagram geeft de verkoop per land weer.

Het diagram aan de rechterkant bevat echter een datawaarde voor elke verkooporder. Hier worden een grotere verdeling en uitschieters getoond. Er zijn voldoende details in de weergave om een tabelberekening te gebruiken.

U kunt het 90e percentiel van de verkoop voor elk land berekenen met behulp van een distributieband (equivalent aan een tabelberekening). Deze visualisatie bevat meer context.

Een spreidingsdiagram geeft de verkoop per land weer.

Beide berekeningen komen uit op dezelfde waarden, maar de inzichten die u uit beide berekeningen haalt, verschillen op basis van het detailniveau (de hoeveelheid data) in de visualisatie.


Basisexpressie of Level of Detail (LOD)-expressie?

Als u niet over alle data beschikt die u nodig hebt voor de visualisatie, moet uw berekening worden doorgestuurd naar de databron. Dit betekent dat u een basisberekening of een LOD-expressie moet gebruiken.

Als u nee antwoordde op vraag 1 vraag uzelf dan af:

Vraag 2:

Komt de granulariteit van uw vraag overeen met de granulariteit van de visualisatie of de granulariteit van de databron?

  • Is het antwoord ja: gebruik een basisexpressie.
  • Is het antwoord nee: gebruik een Level of Detail (LOD)-expressie.

Een stroomdiagram dat het proces weergeeft waarmee wordt bepaald hoe data voor een visualisatie moeten worden berekend. Als u reeds over alle datawaarden beschikt die u nodig hebt voor de visualisatie, gebruikt u een tabelberekening. Als dat niet zo is, vraag uzelf dan af: komt de granulariteit van de vraag overeen met de granulariteit van de visualisatie of de granulariteit van de bron? Als dat het geval is, gebruik dan een LOD-expressie. Als dat niet het geval is, gebruik dan een basisexpressie.

Voorbeeld

Kijk eens naar de volgende visualisatie. Hier wordt het 90e percentiel van de verkoop voor alle bestellingen in elk land getoond.

Een staafdiagram dat het 90e percentiel van de verkoop per land weergeeft.

In dit voorbeeld wordt de databron Voorbeeld - Superstore gebruikt die bij Tableau wordt geleverd. Als u bekend bent met de databron Voorbeeld - Superstore, weet u wellicht dat er één rij data per Bestellings-ID is. Daarom is Bestellings-ID de granulariteit van de databron. De granulariteit van de visualisatie is echter Land.

Als u wilt weten wat de 90e percentielwaarde van de verkopen is voor bestellingen in elk land op het granulariteitsniveau van de Bestellings-ID, kunt u de volgende LOD-expressie gebruiken:

 {INCLUDE [Order ID] : SUM([Sales])}

Vervolgens kunt u het veld wijzigen zodat de weergave wordt geaggregeerd op het 90e percentiel.

Hiervoor klikt u op de vervolgkeuzelijst met velden en selecteert u Meetwaarde > Percentiel > 90.

Het volgende diagram laat zien hoe de LOD-expressie in dit geval werkt:

Een diagram dat de relatie tussen aggregatie en granulariteit illustreert.

  1. De data beginnen volledig geaggregeerd op SUM(Verkoop) en gaan vervolgens naar het detailniveau Land: SUM(Verkoop) op Land.
  2. De LOD-berekening wordt toegepast en de data krijgen meer granulariteit: SUM(Verkoop) op Land + Bestellings-ID.
  3. >De LOD-berekening wordt geaggregeerd tot het 90e percentiel: PCT90(SUM(Verkoop) op Land + Bestellings-ID)

Het resultaat is als volgt:

Een horizontaal staafdiagram dat het 90e percentiel van de verkoop per order-ID in verschillende landen weergeeft.

Tabelberekening of Level of Detail (LOD)-expressie?

Bij het kiezen tussen een tabelberekening of een LOD-berekening lijkt het proces sterk op het kiezen tussen een tabelberekening en een basisexpressie. Stel uzelf de volgende vragen:

Hebt u reeds alle datawaarden die u nodig hebt voor de visualisatie?

  • Is het antwoord ja, gebruik dan een tabelberekening.
  • Is het antwoord nee, vraag uzelf dan af: Komt de granulariteit van de vraag overeen met de granulariteit van de visualisatie of de granulariteit van de databron? Is het antwoord nee, gebruik dan een LOD-berekening.

Een stroomdiagram dat het proces weergeeft waarmee wordt bepaald hoe data voor een visualisatie moeten worden berekend. Als u reeds over alle datawaarden beschikt die u nodig hebt voor de visualisatie, gebruikt u een tabelberekening. Als dat niet zo is, vraag uzelf dan af: komt de granulariteit van de vraag overeen met de granulariteit van de visualisatie of de granulariteit van de bron? Als dat het geval is, gebruik dan een LOD-expressie. Als dat niet het geval is, gebruik dan een basisexpressie.

Alleen tabelberekeningen

Er zijn enkele scenario's waarin alleen een tabelberekening volstaat. Deze omvatten:

  • Rangschikking
  • Recursie (bijv. cumulatieve totalen)
  • Voortschrijdende berekeningen (bijv. voortschrijdende gemiddelden)
  • Berekeningen tussen rijen (bijv. berekeningen die periodes met elkaar vergelijken)

Als uw analyse een van deze scenario's vereist, gebruik dan een tabelberekening.

Een stroomdiagram met stappen om te bepalen welk type berekening moet worden gebruikt.

Voorbeeld

Kijk eens naar de volgende visualisatie. Hier wordt voor verschillende aandelen de gemiddelde slotkoers tussen september 2014 en september 2015 getoond.

Een lijndiagram geeft de slotkoersen van geselecteerde bedrijven gedurende een periode van een jaar weer.

Als u wilt zien hoeveel keer de slotkoers de huidige recordsluitwaarde heeft overschreden, moet u een tabelberekening gebruiken, en meer specifiek een recursieve berekening.

Waarom? Omdat tabelberekeningen meerdere waarden kunnen uitvoeren voor elke datapartitie (cel, venster, tabel), terwijl basis- en LOD-expressies slechts één waarde kunnen uitvoeren voor elke partitie of datagroep.

Om het aantal keren te berekenen dat de slotkoers de recordkoers overschrijdt voor elk aandeel, zijn er een paar stappen die u moet volgen.

  1. U moet rekening houden met alle voorgaande waarden om te bepalen of er een nieuwe maximale sluitwaarde is bereikt. U kunt dit doen met een RUNNING_MAX-functie. Het volgende voorbeeld is berekend op basis van Dag (over de hele tabel), en is getiteld Huidig record:
    RUNNING_MAX(AVG([Close]))
  2. Vervolgens kunt u de dagen markeren waarop het record werd verbroken met behulp van de volgende berekening, berekend op basis van Dag (over de hele tabel), getiteld Tel dagen record verbroken:

    IF AVG([Close]) = [Record to Date] 
    THEN 1
    ELSE 0
    END
  3. Ten slotte kunt u deze dagen tellen met behulp van de volgende berekening, berekend op basis van Dag (over de hele tabel):

    RUNNING_SUM([Count Days Record Broken])

    Wanneer u het uiteindelijk berekende veld aan de weergave toevoegt op de plaats van AVG(Close), krijgt u zoiets als dit:

    Een lijndiagram dat de frequentie van de weergave van een ticker symbol in de loop van de tijd weergeeft.


Ook in deze serie:

De basisprincipes van berekeningen in Tableau(Link wordt in een nieuw venster geopend)

Berekeningstypen in Tableau(Link wordt in een nieuw venster geopend)