[英]CRS invalid projection
当我尝试这个 function 时,我得到一个错误。
gdf = gpd.GeoDataFrame(df, geometry = "Coordinates", crs=4326)
CRSError: Invalid projection: epsg:4326: (Internal Proj Error: proj_create: SQLite error on SELECT name, type, coordinate_system_auth_name, coordinate_system_code, datum_auth_name, datum_code, area_of_use_auth_name, area_of_use_code, text_definition, deprecated FROM geodetic_crs WHERE auth_name =? AND code =?:没有这样的列:area_of_use_auth_name)
上次运行良好,但是当我今天尝试运行时,它给了我这个错误。 帮助将不胜感激!
您安装的pyproj
没有看到正确的数据库。 请参阅https://pyproj4.github.io/pyproj/stable/gotchas.html#internal-proj-error-sqlite-error-on-select 。
如果您在一个环境中启动 Jupyter 并更改 kernel,通常会发生这种情况。 PROJ 数据库的链接保持不变,这可能会导致问题。
例如,假设我在geo_env
环境中启动了 Jupyter 实验室,然后将 kernel 切换到development
环境并像您一样得到错误。
我可以查看我的项目字典:
>>> import pyproj
>>> pyproj.datadir.get_data_dir()
'/opt/miniconda3/envs/geo_env/share/proj'
看到它仍然链接到我启动 Jupyter 的环境。 我可以通过指定正确的路径来解决这个问题。
>>> pyproj.datadir.set_data_dir('/opt/miniconda3/envs/development/share/proj')
当您看到此错误时,情况与任何其他情况类似。 您只需指定proj
的正确路径。
你好,我这两天也遇到了同样的问题。 问题来自库 Pyproj。 以下几点解决了我的问题:
conda config --prepend channels conda-forge
conda config --set channel_priority strict
conda create -n pyproj_env pyproj
conda activate pyproj_env
使用这个新环境创建一个新项目
使用 conda 安装 geopandas
我解决了在创建环境时指定包版本的问题。
...anaconda3\envs\<ENV>\conda-meta\proj-<VERSION>-h1cfcee-<VERSION>.json
$ conda create --name udl_report_env python==3.9.7 pyproj==3.3.0 proj==8.2.0
选择这些版本是因为我要覆盖一些依赖项,您的可能会有所不同.
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.