地理定位PostGIS数据库

时间:2016-02-17 21:35:54

标签: postgresql ruby-on-rails-4 geolocation postgis qgis

我有一个PostGIS数据库,其中包含地址(包含数字,城市,州的街道)以及lat和long以及几何的字段。我在引入PostGIS之前对一些地址进行了地理定位,但之后添加了其他地址。如何对这些地址进行地理定位。

FWIW他们都在同一个城市,但我有城市和州的领域。

一个主要问题是许多地址将不存在或将具有不同的坐标,因为地址是100年或更久以前。我知道我必须使用期间的叠加图来手动执行一些地址。

我看到很多关于如何对CSV文件进行地理定位的建议,但没有直接从QGIS或pgAdmin使用!

数据库在Ruby on Rails中管理,如果这是解决此问题的更好方法。

2 个答案:

答案 0 :(得分:0)

查看Tiger Geocoder,它仅适用于美国地址。安装时使用:

CREATE EXTENSION IF NOT EXISTS postgis;
CREATE EXTENSION fuzzystrmatch;
CREATE EXTENSION postgis_tiger_geocoder;

然后加载您所在州的数据,并使用Geocode来近似几何体。对于历史地址,也许您可​​以从these guys请求历史TIGER数据(尽管我不知道他们是否真的拥有100年前的数字化人口普查数据)。

否则,如果您了解Python,则可以使用geopy一系列服务对地址中的位置进行地理编码。

答案 1 :(得分:0)

谢谢Mike T,你的回答让我更清楚地了解我需要什么。我跟着http://railscasts.com/episodes/273-geocoder描述了使用我能够集成到我的Rails项目中的Ruby地理编码器gem。

据我所知,我回答了一个与我提出的问题不同的问题。我还没有完全做到这一点,但我认为这比我想的要容易。我可能不得不强迫每个地址,但我没有那么多。