Jupyter notebook 执行to_crs以转换geodataframe的几何图形时内核消亡

Jupyter notebook 执行to_crs以转换geodataframe的几何图形时内核消亡,jupyter-notebook,geopandas,fiona,Jupyter Notebook,Geopandas,Fiona,在运行Python3的Jupyter笔记本中,当我试图将geodataframe的几何体从EPSG4326转换为EPSG3857时,我的内核一直在消亡 最小可复制代码: df = pd.DataFrame( {'City': ['A', 'B', 'C', 'D', 'E'], 'Country': ['1', '2', '3', '4', '5'], 'Latitude': [-34.58, -15.78, -33.45, 4.60, 10.48], 'L

在运行Python3的Jupyter笔记本中,当我试图将geodataframe的几何体从EPSG4326转换为EPSG3857时,我的内核一直在消亡

最小可复制代码:

df = pd.DataFrame(
    {'City': ['A', 'B', 'C', 'D', 'E'],
     'Country': ['1', '2', '3', '4', '5'],
     'Latitude': [-34.58, -15.78, -33.45, 4.60, 10.48],
     'Longitude': [-58.66, -47.91, -70.66, -74.08, -66.86]})

crs = {'init': 'epsg:4326'}

gdf = gpd.GeoDataFrame(
    df, crs=crs, geometry=gpd.points_from_xy(df.Longitude, df.Latitude))

gdf.geometry = gdf.geometry.to_crs(epsg=3857)
我在中尝试过该解决方案,即更新到PyProj的最新版本。这并不能解决我的问题

我还尝试为geopandas创建一个新的、专用的conda环境。这也不能解决我的问题

当我在Python终端脚本中运行最小可重复代码时,我得到下面的输出,它指向菲奥娜的问题。

(geo) RichardgrimsMBP:desktop data_science$ python tocrs.py
Traceback (most recent call last):
File "tocrs.py", line 4, in
import geopandas as gpd
File "/opt/anaconda3/envs/geo/lib/python3.8/site-packages/geopandas/init.py", line 7, in
from geopandas.io.file import _read_file as read_file # noqa
File "/opt/anaconda3/envs/geo/lib/python3.8/site-packages/geopandas/io/file.py", line 7, in
import fiona
File "/opt/anaconda3/envs/geo/lib/python3.8/site-packages/fiona/init.py", line 86, in
from fiona.collection import BytesCollection, Collection
File "/opt/anaconda3/envs/geo/lib/python3.8/site-packages/fiona/collection.py", line 11, in
from fiona.ogrext import Iterator, ItemsIterator, KeysIterator
ImportError: dlopen(/opt/anaconda3/envs/geo/lib/python3.8/site-packages/fiona/ogrext.cpython-38-darwin.so, 2): Symbol not found: _CCCryptorGCMFinalize
Referenced from: /opt/anaconda3/envs/geo/lib/libtiledb.dylib (which was built for Mac OS X 10.13)
Expected in: /usr/lib/libSystem.B.dylib
in /opt/anaconda3/envs/geo/lib/libtiledb.dylib

我通过在conda环境中固定一个较旧版本的tiledb(2.0.8)成功地解决了这个问题。conda solver忽略了我的macOS版本(10.11.6)并给了我一个不兼容的tiledb版本(2.1.2),这似乎是一个问题


请参阅github问题和。

如果在python终端中不使用jupyter运行此程序,是否会出现问题?当您的环境处于活动状态时,环境变量PROJ_NETWORK的值是多少?在Windows上使用
conda create-n test36_12_cforge-c conda forge python=3.6.12 ipython geopandas
environment。你能在那种环境下尝试一下你在ipython中的最小示例吗?内核是死于错误还是消失了?@snowman2-当我在python终端上运行这个最小的示例时,我在“import geopandas as gpd”行得到一个ImportError:ImportError:dlopen(/opt/anaconda3/envs/geo/lib/python3.8/site-packages/fiona/ogrext.cpython-38-darwin.so,2):符号未找到:CCCryptorGCMFinalize引用自:/opt/anaconda3/envs/geo/lib/libtiledb.dylib(为Mac OS X 10.13构建),预期位于/opt/anaconda3/envs/geo/lib/libtiledb中的:/usr/libSystem.B.dylib。dylib@doctorG-创造这样的环境对我来说不起作用。参见下面的终端输出。(geo)RichardgrimsMBP:desktop data_science$conda create-n test36_12_cforge-c conda forge python=3.6.12 ipython geopandas收集包元数据(current_repodata.json):完成解决环境:使用current_repodata.json中的repodata失败,将使用下一个repodata源重试。收集包元数据(repodata.json):完成解决环境:|发现冲突!正在查找不兼容的包。这可能需要几分钟。按CTRL-C以中止。