Aggregeren wordt in Swing op drie onderdelen toegepast die in deze FAQ worden toegelicht.
Gebiedsaggregatie
Met gebiedsaggregatie wordt een relatie gelegd tussen twee of meer gebiedsniveaus. Hiermee kan data worden doorgeteld naar een hoger gebiedsniveau. Wanneer er twee gebiedsaggregaties naar het zelfde oudergebied optellen wordt altijd de aggregatie met het minst aantal gebieden gebruikt. Als er bijvoorbeeld data is ingelezen op zowel gemeenteniveau als provincieniveau en er bestaat een aggregatie van gemeenten naar Nederland en van provincies naar Nederland, dan wordt de data die op provincie is ingelezen op het niveau van Nederland getoond.
Bijvoorbeeld
Er is een aggregatie naar gemeenten van zowel postcodeniveau als wijkniveau. Omdat er meer postcodes zijn dan wijken wordt altijd de aggregatie van het wijkniveau gebruikt. Wanneer er data is ingelezen op zowel wijk- als op postcodeniveau (maar niet op gemeenteniveau) wordt op gemeenteniveau de geaggregeerde wijkdata weergegeven. Als er wel data is ingelezen op het niveau waarnaar wordt geaggregeerd, heeft dit altijd voorrang boven de geaggreerde data. Dus als data is ingelezen op gemeenteniveau dan wordt de aggregatie van wijk naar gemeente niet gebruikt om de data te tonen op gemeenteniveau.
Wanneer data op meerdere gebiedsniveaus is ingelezen die met een gebiedsaggregatie aan elkaar zijn gerelateerd wordt de data van het hogere niveau op het ouderniveau gepresenteerd. In onderstaand voorbeeld wordt de data die op provincieniveau is ingelezen dus ook op Nederlandniveau gepresenteerd.
Gebiedsniveau | Gebiedsaggregatie | Data ingelezen? | Welke data word getoond? |
Gemeenten | ↓ | Ja | Gemeenten |
Provincies | ↓ | Ja | Provincies |
Landsdelen | ↓ | Nee | Totaal Provincies |
Nederland | Nee | Totaal Provincies |
Indien er een kortere aggregatieroute wordt toegevoegd, (bijvoorbeeld een aggregatie die rechtstreeks van gemeenten naar Nederland telt) toont Nederland de geaggregeerde gemeentedata. Als de routes even kort zijn, (door ook een aggregatie van provincies naar Nederland op te nemen) wordt op Nederlandniveau weer de geaggreerde provinciedata getoond. Bij meerdere gebiedsaggregaties wordt dus altijd voor de combinatie van de kortste aggregatieroute met het minst aantal gebieden gekozen.
In Swing kunnen gebieden in de geoitem tabel ook op 'hide' worden gezet. Deze gebieden worden dan niet meer getoond in Swing Viewer, maar de data die hierop is ingelezen wordt wel gebruikt om te aggregeren naar hogere gebiedsniveaus. In voorkomende gevallen wijkt het totaal van het ouderniveau dus af van het totaal van het kindniveau.
Periodeaggregatie
Bij periodeaggregatie maakt Swing een impliciete aggregatie die maanden via kwartalen en halfjaren naar jaren optelt. Bij periodeaggregatie wordt ook de logica van de korste route toegepast. Wanneer er bijvoorbeeld data is ingelezen op maand- en kwartaalniveau wordt op jaarniveau altijd het totaal van de kwartalen getoond. Als data op verschillende periodeniveaus optelt tot verschillende totalen kan de data het best ook worden ingelezen op jaarniveau om het juiste totaal weer te geven.
Gebiedsaggregatie heeft voorrang boven periodeaggregatie. In onderstaand voorbeeld wordt dus de geaggreerde gemeentedata getoond wanneer Nederland op jaarniveau wordt gepresenteerd.
Periode | Gebiedsniveau | Periodeniveau | Welke data wordt bij Nederland op jaarniveau getoond? |
2025 | Gemeenten | Jaar | Totaal gemeenten |
2025 | Nederland | Maand | Totaal gemeenten |
Dimensieaggregatie
Bij aggregatie over dimensieniveaus die naar het zelfde dimensieniveau aggregeren, (kind → ouder, kind → ouder) wordt het niveau van het eerste (ingelezen) datarecord gebruikt om het hogere dimensieniveau of het totaal van het onderwerp te presenteren. Het is niet mogelijk om voor een periode of gebied een andere dimensieaggregatie in te stellen. Indien dimensieniveaus tot verschillende totalen optellen is het dus van belang om randtotalen voor het kubusonderwerp in te lezen zodat voor elke selectie het juiste totaal wordt getoond.
Periode | Datarecord | Waarde | Dimensieniveau (kind) | Dimensieniveau (ouder) | Wat staat er bij C? |
2025 | 1 | 10 | A | C | 10 |
2025 | 2 | 50 | B | C | 10 |
Uit bovenstaande tabel wordt duidelijk dat een alternatieve dimensieaggregatie nergens wordt gebruikt. De data uit dimensieniveau B wordt alleen gepresenteerd als B wordt geselecteerd.
Dimensie-aggregaties tussen meerdere dimensieniveaus (kind → ouder → grootouder) werken alleen voor het aggregeren van data vanaf het 'kind' niveau. Data die is ingelezen op een 'ouder' niveau wordt alleen getoond waneer het onderwerp wordt uitgesplitst naar dat niveau. Wanneer een waarde op het kindniveau voor een bepaalde periode of gebied ontbreekt, kan de aggregatie (ouder → grootouder) niet als alternatief functioneren. De periode of het gebied zonder data van het kindniveau wordt alleen weergegeven door gebruik te maken van randtotalen.
Periode | Datarecord | Waarde | Dimensieniveau (kind) | Dimensieniveau (ouder) | Dimensieniveau (grootouder) | Wat staat er bij C? |
2024 | A | 10 | A | B | C | 10 |
2024 | A, B | 10, 50 | A | B | C | 10 |
2025 | B | 50 | A | B | C | Niets |
Trendbreuk
Deze situaties komen vaak voor bij een trendbreuk in de dataset. Om gegevens van een oud dimensieniveau correct te combineren met die van een nieuw dimensieniveau moet dus altijd gebruik worden gemaakt van randtotalen.
Meer informatie over randtotalen staat in de kubushandleiding.
Was dit artikel nuttig?
Dat is fantastisch!
Hartelijk dank voor uw beoordeling
Sorry dat we u niet konden helpen
Hartelijk dank voor uw beoordeling
Feedback verzonden
We stellen uw moeite op prijs en zullen proberen het artikel te verbeteren