Avatar billede Computernørderne Juniormester
11. februar 2021 - 11:19 Der er 12 kommentarer og
1 løsning

Postnumre i Danmark

Hej Eksperter

For en af mine projekter har jeg brug for en database med alle postnumre i Danmark. De kan naturligvis bare downloades, men jeg vil gerne begrænse mig til "beboelige" postnumre. Fx 6825 er Ansager Posthus, og der bor der ingen mennesker. Samme gælder pakkecentre, brevcentraler, og specielle postnumre til DR og J. Lauritzen.

Og så vil jeg meget gerne have en slags korrelation mellem postnumrene:
Postnummer 6700 (Esbjerg) grænser til 6705 (Esbjerg Ø), 6710 (Esbjerg V), 6715 (Esbjerg N) og 6720 (Fanø). Så afstand fra 6700 til 6705 er 1.
6705 grænser til 6715, 6818 (Årre), 6740 (Bramming), 6731 (Tjæreborg) og 6700. Så afstand fra 6705 til 6731 er 1, men afstand fra 6700 til 6731 er 2, fordi man skal over mindst ét andet postnummer. Giver det mening?

Jeg kan sagtens lave det selv, men det vil tage lang tid, og med risiko for at jeg laver fejl. Jeg vil ikke opfinde den dybe tallerken igen, så hvis nogen ligger inde med noget jeg kan bruge, så hører jeg det gerne!

Albert

PS Jf. Computerworld/Eksperten er jeg juniormester. Det passer helt fint til min unge alder :)
Avatar billede claes57 Ekspert
11. februar 2021 - 11:50 #1
korrelation? hvilket transportmiddel? der går jo fly fra rønne til billund, så der er korrelation 1, og tilsvarende kan man sejle fra rønne til køge? Det bliver umuligt at lave.
Avatar billede Computernørderne Juniormester
11. februar 2021 - 12:23 #2
Fremragende spørgsmål, Claes57. Det er tiltænkt transport over land og vand, ikke luft. Fanø grænser ikke på land til Esbjerg, men der er en færge mellem Fanø og Esbjerg.
Avatar billede claes57 Ekspert
11. februar 2021 - 13:14 #3
københavn/frederiksberg som jo reelt er vejnavne - dem kan du hurtigt skære ned til bynavn (evt som København S osv) i grupper - men de enkelte postnumre skal jo være der.
så ville jeg starte med at fjerne dobbelt-numre (de offentlige data har flere dubletter, hvor et postnummer ligger i fx 2 kommuner)
derefter en tabel med postnummer1, postnummer2, og relation
start med at finde alle færgeruter, og indtast postnumre på start/slut
derefter alle broforbindelser, og endelig tilgrænsende naboområder.
Avatar billede Computernørderne Juniormester
11. februar 2021 - 13:40 #4
Enig. Mit håb var, at jeg ikke var den første der havde brug for dette, så ville det spare mig en masse tid (eventuelt betale for at få lov til at bruge det). Men det ser ud til at jeg skal lave det selv fra bunden. Jeg må bare klø på :)

Tak for svaret, Clæs.
Avatar billede falster Ekspert
11. februar 2021 - 13:47 #5
Kigger med. Mest fordi
begrænse mig til "beboelige" postnumre
tror jeg bliver svær.

Kilden kender i/du selvfølgelig:

https://danmarksadresser.dk/adressedata/brug-data/

Held og lykke!
Avatar billede Computernørderne Juniormester
12. februar 2021 - 10:48 #6
Tak, falster. Jeg kendte faktisk ikke til selve hjemmeside, men min makker, som jeg kører projektet med, har nævnt en eller anden service med en fancy forkortelse som styrer adresser, så mon ikke det er den han mente.
Tak i hvert fald, jeg har skrevet til Styrelsen for Dataforsyning og Effektivisering, så må jeg afvente hvad de skriver.

Men hvorfor skulle det blive svært med "beboelige" postnumre? Om ikke andet kan jeg lave det selv, men jeg tænker at jeg nok ikke er den første der har brug for disse data - måske er jeg dog den første der skal bruge det med "grænse til hinanden" (og tage Clæs' bemærkninger med i overvejelserne).
Avatar billede falster Ekspert
12. februar 2021 - 12:14 #7
Det er mest definitionen af "beboelig", som jeg synes er problematisk. (Drejer det sig om "lovligt at bebo" (men kan stå ubeboet), "lovligt beboet", "faktisk beboet" e.l.)

Derfor et interessant emne.
Avatar billede Computernørderne Juniormester
12. februar 2021 - 13:23 #8
Jeg tager ikke højde for ulovligheder. Det, jeg vil bruge det til, er virksomheder, der er registreret i postnummer 6700 også gerne vil servicere kunder i postnummer 6705 og 6731 - selvom de ligger "2 postnumre væk". Men de kører nok næppe til postnummer 3700 (Rønne), hvis virksomheden har nok at lave i lokalområdet.
Det bliver dog uanset hvad lidt svært at køre til postnummer 0900.

Albert
Avatar billede acore Ekspert
12. februar 2021 - 15:57 #9
Jeg ved godt, at det ikke helt er den vej, du gerne vil gå, men...

Se https://vis.aws.dk/postnumre?landpostnumre. Her er et punkt for hvert postnumber, der er centrum. Koordinaterne kan du få på https://dawa.aws.dk/postnumre?landpostnumre (de ligger under "visuelt center"). Så kan du let beregne afstanden mellem 2 postnumre i kilometer.

De burde da være bedre, og ret ligetil?
Avatar billede Computernørderne Juniormester
12. februar 2021 - 16:12 #10
Hej Acore

Ja, det vil være endnu bedre. Hvis jeg kan bruge det som API, så ville det være perfekt. Det må jeg undersøge. Tusind tak for det!

Albert
Avatar billede acore Ekspert
12. februar 2021 - 16:17 #11
Du kan bruge det frit som api på alle mulige måder. Du kan også downloade data en gang for alle, hvis det passer bedre
Avatar billede Computernørderne Juniormester
12. februar 2021 - 16:19 #12
Fedt! Jamen så tror jeg, uden at have afprøvet det, at du har løst mit problem endnu bedre end den løsning jeg stilede efter! Tusind tak for det!
Avatar billede acore Ekspert
13. februar 2021 - 08:03 #13
Godt, at du tror du kan bruge det.

Hvis du får udfordringer med at beregne afstanden mellem de to punkter, må du sige til. Det er - som sædvanlig - ikke svært, når man ved hvordan (eller er god til sfærisk geometri).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester