Ближайший почтовый индекс почтового индекса?

StackOverflow https://stackoverflow.com/questions/3705014

  •  02-10-2019
  •  | 
  •  

Вопрос

Мне нужно найти 5 ближайшего почтового индекса почтового индекса. Например, у меня есть 33304, и мне нужно найти ближайшие, такие как 33309, 33308 ...

Есть ли где -то база данных или веб -сервис, которая поможет мне с этим?

Я думаю, что мне придется создать свою собственную базу данных, чтобы сделать это? Я знаю, как это сделать, но если это уже сделано ...

Это было полезно?

Решение

Какая страна? Может быть, вы хотите заказать Geonames: http://www.geonames.org/

Особенно: http://www.geonames.org/export/web-services.html#findnearbypostalcodes

Другие советы

Этот ответ в ответ на недавнюю щедрость, запрашивающую местонахождение почтовых индексов США.

Бюро переписей Соединенных Штатов имеет список почтовых индексов (с широтой и долготой) на их интернет сайт.

А Области таблицы почтового индекса это CSV, который содержит (как описано в описании формата файла), среди других областей:

Column 1    GEOID   Five digit ZIP Code Tabulation Area Census Code
...
Column 6    INTPTLAT    Latitude (decimal degrees) First character is blank or "-" denoting North or South latitude respectively
Column 7    INTPTLONG   Longitude (decimal degrees) First character is blank or "-" denoting East or West longitude respectively

Я бы перешел ссылку выше, с данными из Бизнес -модели бюро переписей CSV CSV Чтобы получить названия города, штата и округа. Этот формат файла описывается, чтобы сдержать (среди других полей) (описание находится в выбранном вами файле для загрузки):

ZIP             C       ZIP Code
NAME            C       ZIP Code Name
...
CITY            C       ZIP City Name
STABBR          C       ZIP State Abbreviation
CTY_NAME        C       ZIP County Name

Я тестировал Geonames и не нашел его достаточно хорошим. Тестовые зоны возле вашего почтового индекса, и вы не найдете весь Zipcodew. У них хорошие результаты, но еще не нашли APIhttp://www.searchbug.com/tools/zip-radius.aspx

Для ближайшего почтового индекса есть два подхода: найти смежные (смежные) почтовые индексы и/или найти ближайшие молнии на основе расстояния от центра одного почтового индекса до центра другого, на основе широты и долготы.

Чтобы выбрать смежный подход ZIP, вам понадобятся данные о границах почтового индекса. Alignstar делает тот, что мы очень довольны (мы перепродаем его), но Esri и несколько других компаний также имеют хорошие продукты. Моя компания, GreatData.com, разработала продукт смежных округов и могла разработать постоянный продукт почтовых индексов, но до сих пор никто не просил об этом. Это может быть файл данных или API.

Чтобы найти ближайшие почтовые индексы на основе центроидов (центральные точки широты / долготы в почтовом индексе), вам понадобится база данных почтового индекса с данными широты / долготы (мы предоставляем один или обращаемся к ссылкам на некоторые бесплатные ресурсы: // http://uszipcodes.com/free-zip-code-lookup.htm. Если вы просто хотите API, а не хлопот самостоятельно, сообщите нам. спрос.

Одно предостережение о том, чтобы сделать это Центроидами: в прошлом мы видели, где, если у вас большой (или длинный), прилегающий Zip, центр этой молнии может быть дальше, чем другой маленький почтовый индекс, поэтому ваш список из 5 ближайших может пропустить прилегающую молнию.

Вот бесплатный веб -сервис, чтобы сделать именно то, что вам нужно:http://www.zipsiess.com/webservices/

PostgreSQL имеет новую функцию в 9.1 под названием «KNN». Это специально для поиска на расстоянии ближайшего соседа », и из -за сравнительного анализа и тестирования его самостоятельно, он очень быстро и может использоваться для Zipcodes. Вот Быстрое введение в KNN.

Вы также можете найтиТема о применении KNN на Zipcodes, и а более позднее наблюдение.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top