将带有几何列的表加载到DataFram

2024-05-16 16:37:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用pd.read_sql_table方法将带有GEOMETRY列的表(从Postgres DB)加载到Pandas数据帧。我得到错误,因为几何类型似乎不受支持:

C:\Anaconda3\lib\site packages\sqlalchemy\diagnols\postgresql\基地py:3010:SAWarning:Did not recognize type'geometry'of column'geometry'“Did not recognize type'%s'of column'%s'”(attype,name)

有人知道如何将这些数据加载到数据库吗?在“read\u sql\u table”的Doc页面上,我没有看到定义列数据类型的选项。你知道吗


Tags: of数据方法readsqltypetablenot
1条回答
网友
1楼 · 发布于 2024-05-16 16:37:12

just GeoPandas,安装它

git clone https://github.com/geopandas/geopandas.git
cd geopandas
pip install .

还可以直接从GitHub存储库安装最新的开发版本:

pip install git+git://github.com/geopandas/geopandas.git

对于从源代码安装geopanda,同样需要注意正确安装所有依赖项。但是,在从源安装geopanda之前,也可以使用conda独立安装这些依赖项:

conda install pandas fiona shapely pyproj rtree

使用from_postgis方法如下:

import geopandas as gpd
sql = "SELECT ST_asBinary(geom) AS geom, highway FROM roads"
df = gpd.GeoDataFrame.from_postgis(sql, con)

相关问题 更多 >