Het aggregatiebereik definiëren
Er zijn gewoonlijk twee factoren die samen bepalen welke records worden gebruikt voor het definiëren van de waarde van aggregatie in een uitdrukking. Bij het werken in visualisaties zijn deze factoren:
- Dimensionale waarde (bij aggregatie in een diagramuitdrukking)
- Selecties
Samen definiëren deze factoren het bereik van de aggregatie. U komt mogelijk situaties tegen waarbij u de selectie, de dimensie of beide buiten beschouwing wilt laten bij de berekening. In diagramfuncties kunt u dit bereiken door de kwalificatie TOTAL, set-analyse of een combinatie van beide te gebruiken. Samengevat:
-
Om de dimensionale groepering te negeren of aan te passen: gebruik de TOTAL-kwalificaties
-
De selectie negeren of aanpassen: gebruik set-analyse
Methode | Beschrijving |
---|---|
Kwalificatie TOTAL |
Bij gebruik van de kwalificatie TOTAL binnen uw aggregatiefunctie wordt de dimensionale waarde buiten beschouwing gelaten. De total-kwalificatie kan binnen een aggregatie worden gebruikt om het bereik van de aggregatie opnieuw te definiëren door de dimensionale waarden te negeren. De aggregatie wordt in plaats daarvan uitgevoerd op alle mogelijke veldwaarden.
Na de kwalificatie TOTAL kan een lijst met een of meer veldnamen tussen punthaken worden opgegeven. Bijvoorbeeld: Sum(TOTAL <Quarter> {<Year={2013}, Quarter={'Q2'}>} Amount) Deze veldnamen moeten een subset zijn van de diagramdimensies. In dit geval wordt bij de berekening geen rekening gehouden met de diagramdimensies met uitzondering van de aangegeven dimensievariabelen. Er wordt één waarde geretourneerd voor elke combinatie van veldwaarden in de opgegeven dimensievelden. Ook velden die momenteel niet een dimensie zijn in een diagram, kunnen worden opgenomen in de lijst. Dit kan nuttig zijn bij groepsdimensies waarbij de dimensievelden niet vast zijn. Als alle dimensies in de groep worden aangegeven, geeft de functie consistente aggregatieresultaten als het drill-downniveau verandert. Zie Voorbeeld: TOTAL-kwalificatie met uitzondering, en set-analyse voor een voorbeeld van het toevoegen van uitzonderingen tussen punthaken. |
Set-analyse | Bij gebruik van set-analyse binnen uw aggregatie wordt de selectie buiten beschouwing gelaten. De aggregatie wordt uitgevoerd op alle waarden verdeeld over de dimensies. |
TOTAL-kwalificatie en set-analyse |
Bij gebruik van de TOTAL -kwalificatie en set-analyse binnen uw aggregatie worden de selectie en de dimensies buiten beschouwing gelaten, met uitzondering van de dimensies die binnen punthaken staan na de TOTAL -kwalificatie |
ALL -kwalificatie |
Bij gebruik van de ALL-kwalificatie binnen uw aggregatie worden de selectie en de dimensies buiten beschouwing gelaten. Het equivalent kan worden bereikt met de instructie {1} voor set-analyse en de TOTAL -kwalificatie: =sum(All Sales) =sum({1} Total Sales) |
Voorbeeld: TOTAL‑kwalificatie
In het volgende voorbeeld wordt getoond hoe TOTAL kan worden gebruikt voor het berekenen van een relatief aandeel. Ervan uitgaande dat Q2 is geselecteerd, wordt met TOTAL de som van alle waarden berekend, waarbij de dimensies buiten beschouwing worden gelaten.
Year | Quarter | Sum(Amount) | Sum(TOTAL Amount) | Sum(Amount)/Sum(TOTAL Amount) |
---|---|---|---|---|
3000 | 3000 | 100% | ||
2012 | Q2 | 1700 | 3000 | 56,7% |
2013 | Q2 | 1300 | 3000 | 43,3% |
Voorbeeld: set-analyse
In het volgende voorbeeld wordt getoond hoe set-analyse kan worden gebruikt om een vergelijking tussen gegevensverzamelingen te maken voordat er iets is geselecteerd. Ervan uitgaande dat Q2 is geselecteerd, wordt via set-analyse met de set-definitie {1} de som van alle waarden berekend, waarbij selecties buiten beschouwing worden gelaten maar de som wordt verdeeld over de dimensies.
Year | Quarter | Sum(Amount) | Sum({1} Amount) | Sum(Amount)/Sum({1} Amount) |
---|---|---|---|---|
3000 | 10800 | 27,8% | ||
2012 | Q1 | 0 | 1100 | 0% |
2012 | Q3 | 0 | 1400 | 0% |
2012 | Q4 | 0 | 1800 | 0% |
2012 | Q2 | 1700 | 1700 | 100% |
2013 | Q1 | 0 | 1000 | 0% |
2013 | Q3 | 0 | 1100 | 0% |
2013 | Q4 | 0 | 1400 | 0% |
2013 | Q2 | 1300 | 1300 | 100% |
Voorbeeld: TOTAL-kwalificatie en set-analyse ({1}-id)
In het volgende voorbeeld wordt getoond hoe set-analyse en de kwalificatie TOTAL kunnen worden gecombineerd om een vergelijking tussen gegevensverzamelingen te maken voordat er iets is geselecteerd en over alle dimensies heen. Ervan uitgaande dat Q2 is geselecteerd, wordt via set-analyse met de set-definitie (1) en de kwalificatie TOTAL de som van alle waarden berekend waarbij eventuele selecties en de dimensies buiten beschouwing worden gelaten.
Year | Quarter | Sum(Amount) | Sum({1} TOTAL Amount) | Sum(Amount)/Sum({1} TOTAL Amount) |
---|---|---|---|---|
3000 | 10800 | 27,8% | ||
2012 | Q2 | 1700 | 10800 | 15,7% |
2013 | Q2 | 1300 | 10800 | 12% |
Voorbeeld: TOTAL-kwalificatie en set-analyse (gegevens vergelijken met een referentiewaarde)
Het volgende voorbeeld laat zien hoe u set-analyse en de TOTAL-kwalificatie kunt gebruiken om een referentiekolom in uw tabel te maken voor eenvoudige vergelijking van statistieken op rijniveau. Om de gegevens gemakkelijker te begrijpen en te gebruiken, labelen we de metingkolommen.
De gegevens van het tweede kwartaal van 2013 worden gebruikt als referentie om te vergelijken met alle andere waarden in de tabel.
Doe het volgende:
-
Voeg een tabel toe aan uw werkblad.
-
Voeg de volgende velden als dimensies toe:
-
Year
-
Quarter
-
-
Voeg de volgende meting toe:
Sum(Amount)
-
In de eigenschappen voor de meting die u zojuist heb toegevoegd, geeft u de meting het volgende label: Total Sales
-
Voeg de volgende meting toe:
Sum(TOTAL {<Year={2013}, Quarter={'Q2'}>} Amount)
-
In de eigenschappen voor de meting die u zojuist heb toegevoegd, geeft u de meting het volgende label: Reference Quarter (2013-Q2) Total Sales
-
Voeg de volgende meting toe:
round((sum(Amount) / sum(total {<Year={2013}, Quarter={'Q2'}>} Amount))*100,'0.01') & '%'
-
In de eigenschappen voor de meting die u zojuist heb toegevoegd, geeft u de meting het volgende label: Rounded Quotient - Total Sales Compared to Reference Quarter (2013-Q2)
Zonder selecties toe te passen, zou uw tabel er als volgt uit moeten zien:
Year | Quarter | Total Sales | Reference Quarter (2013-Q2) Total Sales | Rounded Quotient - Total Sales Compared to Reference Quarter (2013-Q2) |
---|---|---|---|---|
2012 | Q1 | 1100 | 1300 | 84.62% |
2012 | Q2 | 1700 | 1300 | 130.77% |
2012 | Q3 | 1400 | 1300 | 107.69% |
2012 | Q4 | 1800 | 1300 | 138.46% |
2013 | Q1 | 1000 | 1300 | 76.92% |
2013 | Q2 | 1300 | 1300 | 100.00% |
2013 | Q3 | 1100 | 1300 | 84.62% |
2013 | Q4 | 1400 | 1300 | 107.69% |
Voorbeeld: TOTAL-kwalificatie met uitzondering, en set-analyse
Het volgende voorbeeld laat zien hoe de TOTAL-kwalificatie gebruikt moet worden, maar met een uitzondering op deze kwalificatie tussen punthaken. De voorbeelduitdrukkingen maken ook gebruik van set-analyse.
Doe het volgende:
-
Voeg een tabel toe aan uw werkblad.
-
Voeg de volgende velden als dimensies toe:
-
Year
-
Quarter
-
-
Voeg de volgende meting toe:
Sum(Amount)
-
In de eigenschappen voor de meting die u zojuist heb toegevoegd, geeft u de meting het volgende label: Total Sales
-
Voeg de volgende meting toe:
Sum(TOTAL <Quarter> {<Year={2013}, Quarter={'Q2'}>} Amount)
-
In de eigenschappen voor de meting die u zojuist heb toegevoegd, geeft u de meting het volgende label: Reference Quarter (2013-Q2) Total Sales
Year | Quarter | Total Sales | Reference Quarter (2013-Q2) Total Sales |
---|---|---|---|
2012 | Q1 | 1100 | 0 |
2012 | Q2 | 1700 | 1300 |
2012 | Q3 | 1400 | 0 |
2012 | Q4 | 1800 | 0 |
2013 | Q1 | 1000 | 0 |
2013 | Q2 | 1300 | 1300 |
2013 | Q3 | 1100 | 0 |
2013 | Q4 | 1400 | 0 |
De uitdrukking van de referentiekolom wordt als volgt geïnterpreteerd:
-
De set-uitdrukking {<Year={2013}, Quarter={'Q2'}>} beperkt de invoergegevens tot records met een Year van 2013 en een Quarter van Q2.
-
De TOTAL-kwalificatie zorgt ervoor dat alle dimensies in de tabel genegeerd worden. Met de <Quarter>-specificatie wordt echter een uitzondering gemaakt voor de dimensie Quarter.
Gegevens die worden gebruikt in voorbeelden op deze pagina
Gegevens die worden gebruikt in voorbeelden:
AggregationScope:
LOAD * inline [
Year Quarter Amount
2012 Q1 1100
2012 Q2 1700
2012 Q3 1400
2012 Q4 1800
2013 Q1 1000
2013 Q2 1300
2013 Q3 1100
2013 Q4 1400] (delimiter is ' ');