Tengo una base de datos de muchas decenas de miles de eventos que ocurrieron en ubicaciones geográficas específicas dentro de los Estados Unidos. Los datos incluyen x, y coodinaciones para cada evento, codificadas utilizando el sistema de referencia NAD83. Quiero escribir o utilizar un algoritmo para obtener de manera confiable el código postal de EE. UU. Asociado con cada coordenada x, y de NAD83.algoritmo para obtener códigos postales de EE. UU. Desde las coordenadas gis x, y
Aún no tengo definiciones de código postal usando el sistema de referencia NAD83. Y nunca antes había hecho este tipo de programación. Pero parece que sería intuitivamente simple averiguar si una coordenada x, y dada se encuentra dentro de una forma geométrica de un código postal de EE. UU. Definido utilizando el mismo sistema de referencia NAD83.
¿Puede alguien ayudarme con lo siguiente:
1.) ¿Dónde puedo obtener definiciones del código postal confiables de Estados Unidos en el formato de sistema de referencia NAD83?
2.) ¿Dónde puedo encontrar el código de ejemplo para un algoritmo para encontrar el código postal dado una coordenada x, y?
Cualquier enlace que pueda enviar a artículos instructivos/tutoriales, código de ejemplo y datos de definición de límite de código postal NAD83 sería de gran ayuda. Estoy haciendo búsquedas en Google, pero pensé que las personas en este sitio podrían darme más de una guía de expertos.
I código en Java todos los días. Pero, si el código que proporciona no está escrito en Java, podría tomar el código escrito en otro idioma y adaptarlo a Java para mis propósitos. No tengo un software de base de datos instalado en mi computadora porque solo uso csv o archivos de texto como entradas en mis aplicaciones Java. Si tiene alguna base de datos que sugiera que use, necesitaría enlaces a instrucciones sobre cómo obtener los datos en un formato que pueda importar a un lenguaje de programación como java.
Finalmente, las direcciones de las calles en mi conjunto de datos no incluyen códigos postales, y las direcciones se escriben al azar, por lo que sería muy difícil tratar de limpiar los datos de la dirección lo suficiente como para tratar de obtener códigos postales del direcciones. Puedo aislar los datos en varias ciudades adyacentes, tal vez en un par de cientos de códigos postales, pero creo que las coordenadas x, y de NAD83 son mi mejor opción para obtener el código postal en el que se produjo cada evento en mi conjunto de datos. Quiero vincular mi código postal resultante por análisis de código postal con otros datos que obtengo sobre cada código postal de fuentes como el Censo de EE. UU., Etc.
Gracias de antemano a cualquiera que esté dispuesto a ayudar.
Esto puede o no ser útil: http://stackoverflow.com/questions/3564852/get-zip-code-from-latitude-longitude –
Dado que los límites del código postal son básicamente polígonos (aunque en una esfera), probablemente usaría un algoritmo como el que se encuentra en http://en.wikipedia.org/wiki/Point_in_polygon para determinar si se encuentra dentro de un código postal en particular, tal vez seleccionando un conjunto de códigos postales candidatos cercanos (aquellos cuyos vértices están cerca de el punto en cuestión) como una optimización. –