【问题标题】:changing CRS in GeoPandas在 GeoPandas 中更改 CRS
【发布时间】:2020-05-16 10:47:31
【问题描述】:

我正在尝试更改 geopandas 数据框的 CRS。当前的 CRS 是:

Name: unknown
Axis Info [ellipsoidal]:
- lon[east]: Longitude (degree)
- lat[north]: Latitude (degree)
Area of Use:
- undefined
Datum: World Geodetic System 1984
- Ellipsoid: WGS 84
- Prime Meridian: Greenwich

当我尝试 dfTrans.to_crs('epsg:4326') 时,我收到以下错误:

pyproj.exceptions.CRSError: Invalid projection: epsg:4326: (Internal Proj Error: proj_create: cannot build geodeticCRS 4326: SQLite error on SELECT name, ellipsoid_auth_name, ellipsoid_code, prime_meridian_auth_name, prime_meridian_code, area_of_use_auth_name, area_of_use_code, publication_date, deprecated FROM geodetic_datum WHERE auth_name = ? AND code = ?: no such column: publication_date)

对于 pyproj 中的一个简单命令,pyproj.CRS.from_epsg(4326),我得到了同样的错误:

  File "pyproj/_crs.pyx", line 1738, in pyproj._crs._CRS.__init__
pyproj.exceptions.CRSError: Invalid projection: epsg:4326: (Internal Proj Error: proj_create: cannot build geodeticCRS 4326: SQLite error on SELECT name, ellipsoid_auth_name, ellipsoid_code, prime_meridian_auth_name, prime_meridian_code, area_of_use_auth_name, area_of_use_code, publication_date, deprecated FROM geodetic_datum WHERE auth_name = ? AND code = ?: no such column: publication_date)

我不知道发生了什么,但似乎有一个底层函数调用了一个不存在的列。任何想法如何解决这个问题或解决它?

【问题讨论】:

  • 这些命令只会在 PyCharm 中给出错误。使用命令行运行python,这里没有问题。

标签: geopandas pyproj


【解决方案1】:

我在使用 Proj-5.x 时遇到了同样的错误。 'publication_date' 列似乎是 Proj-6 或 Proj-7 项目(两者都需要 SQLite。)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-25
    • 1970-01-01
    • 1970-01-01
    • 2016-02-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    相关资源
    最近更新 更多