gpt4 book ai didi

python - GeoPandas 在笔记本之间丢失 .crs 信息

转载 作者:太空宇宙 更新时间:2023-11-03 21:17:27 32 4
gpt4 key购买 nike

我遇到了一个奇怪的问题:当使用 GeoPandas(在 Jupyter Notebooks 中)时,.crs 数据在我的第一个笔记本中工作正常,然后在我的第二个笔记本中丢失。

只要看看图书馆附带的一张世界地图,运行这个单元......

world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
world.crs

...在我的第一个笔记本中返回...

{'init': 'epsg:4326'}

...,在我的第二个笔记本中我得到...

{}

除此之外(或正因为如此),匹配 crs 在第一个笔记本中有效,但在第二个笔记本中无效。在笔记本 1 中...

mal0 = gpd.read_file('./bird-species/E00039600_mallard.gdb', layer=0)
mal0 = mal0.to_crs(world.crs)
mal0.crs

返回...

{'init': 'epsg:4326'}

...正如预期的那样,但在笔记本 2 中它会抛出错误:

---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)
<ipython-input-10-fd67623093a6> in <module>
1 mal0 = gpd.read_file('./bird-species/E00039600_mallard.gdb', layer=0)
----> 2 mal0 = mal0.to_crs(world.crs)
3 mal0.crs

~/anaconda3/lib/python3.6/site-packages/geopandas/geodataframe.py in to_crs(self, crs, epsg, inplace)
441 else:
442 df = self.copy()
--> 443 geom = df.geometry.to_crs(crs=crs, epsg=epsg)
444 df.geometry = geom
445 df.crs = geom.crs

~/anaconda3/lib/python3.6/site-packages/geopandas/geoseries.py in to_crs(self, crs, epsg)
303 raise TypeError('Must set either crs or epsg for output.')
304 proj_in = pyproj.Proj(self.crs, preserve_units=True)
--> 305 proj_out = pyproj.Proj(crs, preserve_units=True)
306 project = partial(pyproj.transform, proj_in, proj_out)
307 result = self.apply(lambda geom: transform(project, geom))

~/anaconda3/lib/python3.6/site-packages/pyproj/__init__.py in __new__(self, projparams, preserve_units, **kwargs)
360 # on case-insensitive filesystems).
361 projstring = projstring.replace('EPSG','epsg')
--> 362 return _proj.Proj.__new__(self, projstring)
363
364 def __call__(self, *args, **kw):

_proj.pyx in _proj.Proj.__cinit__()

RuntimeError: b'no arguments in initialization list'

有人知道这是怎么回事吗?

最佳答案

我遇到了完全相同的问题。我可以在没有 jupyter 的情况下使用 geopandas 0.6.1 重现此内容。

这是一个无用的错误消息的情况。实际错误是geopandas不支持你的crs。

关于python - GeoPandas 在笔记本之间丢失 .crs 信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54579844/

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