Voor een eigen project (ik speel graag met data) ben ik in Rstudio bezig om een database met locatiegegevens te koppelen aan een database met verkeersongevallen. Doel is om de boel mooi op een kaartje weer te kunnen geven.
De tabellen zien er nu als volgt uit:
Middels een LEFT JOIN heb ik deze samengevoegd (ik wil namelijk bij elk ongeval een de Latitude en Longitude hebben).
Nu krijg ik precies wat ik wil....
ECHTER...
Bij sommige ongevallen is door een operator een hectometrering ingevuld die in het nwb niet (exact) bestaat. Zo is er bijvoorbeeld een ongeval gemeld op een afrit bij 166.6 (in tabel ongevallen), terwijl in het nwb (in tabel hm) die rijbaan pas begint bij locatie 166.7. Dat ongeval kan nu dus niet worden gematcht aan een locatie.
Mijn vraag
Hoe kan ik beide tabellen (ongevallen en hm) joinen, waarbij ik hectometers van ongevallen zo precies mogelijk een locatie mee wil geven. Mocht de locatie uit [ongevasllen] niet exact bestaan in [hm], join dan op de meest dichtstbijzijnde locatie in [hm].
Ik ben geen expert (begeef nu al 16 uur in R ;-) ), dus met wat ik zelf vind met Google word ik niet echt wijs uit voor mijn situatie. Er zijn wel voorbeelden, maar ik zou bij god niet weten hoe die op mijn situatie te betrekken ;-)
Ik hoop dat iemand mij een beetje Jip-en-Janneke uitleg kan geven (kan wat ik wil überhaupt?), of mij kan doorverwijzen naar (voor mij leesbaar) leesvoer over dit onderwerp.
De tabellen zien er nu als volgt uit:
code:
1
2
3
4
5
| tabel ongevallen (met ongevallen + locatie) ID INCIDENTID WEGNUMMER RIJBAAN HECTOMETERAANDUIDING tabel hm (met hectometrering) ID WVK_ID WEGNUMMER RIJBAAN HECTOMETERAANDUIDING LATITUDE LONGITUDE |
Middels een LEFT JOIN heb ik deze samengevoegd (ik wil namelijk bij elk ongeval een de Latitude en Longitude hebben).
code:
1
2
3
4
5
6
7
| strSQL<-paste("SELECT *", + "FROM ongevallen", + "LEFT JOIN hm", + "ON (ongevallen.WEGNUMMER =hm.WEGNUMMER AND", + "ongevallen.RIJBAAN = hm.RIJBAAN AND", + "ongevallen.HECTOMETERAANDUIDING = hm.HECTOMETERAANDUIDING)" + ) |
Nu krijg ik precies wat ik wil....
ECHTER...
Bij sommige ongevallen is door een operator een hectometrering ingevuld die in het nwb niet (exact) bestaat. Zo is er bijvoorbeeld een ongeval gemeld op een afrit bij 166.6 (in tabel ongevallen), terwijl in het nwb (in tabel hm) die rijbaan pas begint bij locatie 166.7. Dat ongeval kan nu dus niet worden gematcht aan een locatie.
Mijn vraag
Hoe kan ik beide tabellen (ongevallen en hm) joinen, waarbij ik hectometers van ongevallen zo precies mogelijk een locatie mee wil geven. Mocht de locatie uit [ongevasllen] niet exact bestaan in [hm], join dan op de meest dichtstbijzijnde locatie in [hm].
Ik ben geen expert (begeef nu al 16 uur in R ;-) ), dus met wat ik zelf vind met Google word ik niet echt wijs uit voor mijn situatie. Er zijn wel voorbeelden, maar ik zou bij god niet weten hoe die op mijn situatie te betrekken ;-)
Ik hoop dat iemand mij een beetje Jip-en-Janneke uitleg kan geven (kan wat ik wil überhaupt?), of mij kan doorverwijzen naar (voor mij leesbaar) leesvoer over dit onderwerp.