Herkend bedrijfsdata

Gebieden

Elke marktvraag gaat over een plek. Die plek geef je op als CBS-code, niet als naam.

De codes

VormVoorbeeldAantal
BU + 8 tekensBU05181041, BU0363AA0114.729 buurten
WK + 6 tekensWK051810, WK0363AD3.423 wijken
GM + 4 cijfersGM0363342 gemeenten

Let op bij het bouwen van een validatie: buurt- en wijkcodes zijn niet allemaal cijfers. 517 van de 14.729 buurten en 110 van de 3.423 wijken bevatten letters — Amsterdam bijvoorbeeld heeft BU0363AA01. Een patroon dat alleen cijfers toestaat laat die gebieden stil vallen. Gemeentecodes zijn wél overal vier cijfers.

Een naam mag ook als invoer. De server zoekt hem op, kiest het meest voor de hand liggende gebied, en zegt in het antwoord welke code gekozen is en welke alternatieven er waren — er zijn meerdere plaatsen die Bergen heten.

Waarom niet op naam

Te grof

Amsterdam-Noord en de Zuidas zijn geen vergelijkbare markten. Wie “Amsterdam” vraagt, middelt ze weg.

Te wisselvallig

Dezelfde stad heet in de ene bron ’s-Gravenhage en in de andere Den Haag. Een code is eenduidig.

Hoe de koppeling werkt

Onze vestigingen hebben een adres; CBS-data hangt aan gebiedscodes. CBS publiceert de brug zelf: elk postcode-huisnummer in Nederland met de buurt waarin het ligt. Van de 3.858.162 vestigingen valt 99,14% op een exacte treffer van postcode én huisnummer, 0,17% op de postcode alleen (die postcode ligt geheel in één buurt, dus er is niets gegokt) en 0,02% op de buurt met de meeste adressen in die postcode — dat laatste is een schatting en heet in het antwoord ook zo. De rest krijgt null met een reden, geen gok: 23.991 vestigingen hebben geen bruikbaar adres, en van 1.713 vestigingen kent CBS de postcode niet (524 verschillende postcodes).

Gebiedsindelingen wijzigen jaarlijks

Gemeenten fuseren en buurtgrenzen verschuiven. Een buurtcode uit 2023 hoeft in 2025 niet hetzelfde gebied te dekken. Onze koppeling draagt daarom een indelingsjaar; dat is nu 2025.

Waar het inkomen ontbreekt — en wat er dan gebeurt

Een buurtcode geeft je niet vanzelf alle buurtcijfers. Het CBS publiceert het gemiddeld inkomen per inwoner alleen boven de tweeduizend inwoners, en dat is veel minder vaak dan het lijkt. Gemeten op de jaargang 2024:

VeldBuurtenInwoners daarin
gemiddeld inkomen per inwoner1.950 van 14.574 (13,4%)8.437.870 (47,0%)
gemiddelde WOZ-waarde12.781 (87,7%)17.810.630 (99,3%)

In 86,6% van de buurten viel de inkomenscorrectie in het bestedingspotentieel dus weg, en werd het gebied als exact gemiddeld behandeld — ook de Beethovenbuurt in Amsterdam, met een WOZ van 3,75 keer het landelijke cijfer. Daar staat nu een terugval op de WOZ tegenover. Die is gemeten en geen aanname: over de 1.949 buurten waar allebei staat loopt de inkomensindex mee met de WOZ-index tot de macht 0,519 (r = 0,810 op de logaritmen). De helling is een half en geen één — twee keer de landelijke WOZ is 1,43 keer het landelijke inkomen — en lineair doorschalen maakt de fout gróter dan helemaal geen correctie.

Op een holdout (gefit op 974 buurten, getoetst op 975) is de mediane fout op de index 0,064 met de terugval tegen 0,120 zonder correctie. Buiten het gefitte bereik van 0,397 tot 3,944 keer de landelijke WOZ wordt afgekapt en niet doorgetrokken; dat raakt 76 van de 10.832 buurten zonder inkomenscijfer (0,7%). Een index die uit de WOZ komt zegt dat zelf, in het veld inkomensindex_bron: een afgeleid getal en een gepubliceerd getal zijn niet even hard, en dat is aan het getal niet te zien.

Het raster naast de buurt

Een verzorgingsgebied op reistijd telt buurten: een buurt doet volledig mee of helemaal niet, dus de rand wordt afgerond op hele buurten. Daarnaast telt herkend_catchment over de 392.107 CBS-vierkanten van honderd bij honderd meter, en die geven de rand scherp. Allebei staan ze in het antwoord, want ze meten iets anders.

Het raster is een ondergrens. CBS onderdrukt vierkanten met te weinig waarnemingen: 2.237 vakken (0,57%) hebben geen inwonertal en 102.041 (26,02%) geen huishoudens. Die twee aandelen stonden eerder in het antwoord als “0,6% en 26%” alsof het om mensen ging. Het zijn vakaandelen. Nagemeten mist het raster landelijk 4,0% van de inwoners (17.314.380 tegen 18.044.027) en 7,5% van de huishoudens (7.801.825 tegen 8.430.352) — een veelvoud van het oude getal bij de inwoners en een derde ervan bij de huishoudens. Een model dat het oude getal las kon een goed antwoord met een fout cijfer gaan corrigeren.

Dat tekort schaalt omgekeerd met de dichtheid, want elke gepubliceerde waarde is een veelvoud van vijf met een minimum van vijf: in Amsterdam mist het raster 2,1% van de inwoners, in Ommen 21,0%. Gebruik het rastercijfer voor de vorm van de rand en het buurtcijfer voor het niveau.