gpt4 book ai didi

python - 将包含 GEOMETRY 列的表加载到 Pandas DataFrame

转载 作者:行者123 更新时间:2023-12-05 05:07:11 24 4
gpt4 key购买 nike

我正在尝试使用 pd.read_sql_table 方法将带有 GEOMETRY 列的表(从 Postgres DB)加载到 Pandas DataFrame。我收到错误消息,因为似乎不支持 GEOMETRY 类型:

C:\Anaconda3\lib\site-packages\sqlalchemy\dialects\postgresql\base.py:3010: SAWarning: 无法识别列 'geometry' 的类型 'geometry' “无法识别类型 '%列 '%s' 的 s'"%(类型、名称)

有谁知道如何将此类数据加载到 Pandas df?在“read_sql_table”的 Pandas Doc 页面上,我没有看到定义列数据类型的选项。

最佳答案

just GeoPandas , 安装它

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

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

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

对于从源代码安装 GeoPandas,同样需要正确安装所有依赖项。但是,这些依赖项也可以在从源代码安装 GeoPandas 之前使用 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)

关于python - 将包含 GEOMETRY 列的表加载到 Pandas DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59364149/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com