Lege adresdata in OSM data wegfilteren en omzetten naar CSV

Van Geofabrik.de heb ik Nederland als gehele regio in een osm.pbf gedownload (Geofabrik Download Server). Ik wil graag de adres data met geolocatie naar CSV format omzetten met osmconvert. Echter merk ik bijvoorbeeld lege straatnamen waar wel een geolocatie aanzit, of andersom wel een straatnaam maar geen geolocatie.

Deze lege waarden probeer ik vervolgens weg te filteren met osmfilter, alvorens ik het omzet naar CSV.

osmconvert64-0.8.8p.exe netherlands-latest.osm.pbf -o=netherlands.o5m
osmfilter.exe netherlands.o5m --drop="addr:street=null or addr:housenumber=null or addr:city=null or addr:postcode=null" > filter.osm
osmconvert64-0.8.8p.exe filter.osm --csv="@lat @lon addr:street addr:housenumber addr:city addr:postcode" -o=1.csv

Echter blijven er lege waarde in de output. Verricht ik de filter met osmfilter wel correct?
Hoe zou ik de lege waarden kunnen weg filteren?

Ik snap de vraag niet helemaal en ben ook niet thuis in Osmconvert maar wel in osmium.

Je bedoelt alle objecten (nodes/ways/relations) met “addr:street”?

Zo ja waarom filter je daar niet op? Zo, nee kan je dan duidelijk uitleggen wat je wilt uitfilteren?

1 Like

In de documentatie van osmfilter vind ik niets over ‘null’. Daarom vermoed ik dat het als een willekeurige tekst beschouwd wordt. Je filtert adressen met de straatnaam “null” of huisnummer “null” uit, maar die zullen er niet zijn.
Ik zou het eens met --keep poberen:

osmfilter.exe netherlands.o5m --keep="addr:street=* and addr:housenumber=* and addr:city=* and addr:postcode=*"

Houd er rekening mee dat niet alle adressen in Nederland een postcode hebben. Dat geldt bijvoorbeeld voor garages. Die krijg je dus niet mee als je addr:postcode=* op neemt in je filter.