Python 使用geopandas进行坐标变换的问题

Python 使用geopandas进行坐标变换的问题,python,pandas,geopandas,shapely,Python,Pandas,Geopandas,Shapely,我正在尝试将一些LAT,LON坐标点转换为国家网格。我将非常感谢你的帮助,因为我花了几个小时寻找答案 anaconda/spyder中的控制台出现错误: 运行时错误:b'初始化列表中没有参数' 我的代码: import geopandas as gpd import pandas as pd import shapely postcodeDF = pd.DataFrame({'lp': ['1', '2', '3', '4', '5'],

我正在尝试将一些LAT,LON坐标点转换为国家网格。我将非常感谢你的帮助,因为我花了几个小时寻找答案

anaconda/spyder中的控制台出现错误:
运行时错误:b'初始化列表中没有参数'

我的代码:

import geopandas as gpd
import pandas as pd
import shapely

postcodeDF = pd.DataFrame({'lp': ['1', '2', '3', '4', '5'],
                           'nazwa': ['Aleksandrów Kujawski', 'Aleksandrów Łódzki', 'Alwernia', 'Andrychów', 'Annopol'],
                           'szer_geo': [52.875, 51.820278, 50.06861, 49.855278, 50.885278],
                           'dlug_geo': [18.694722, 19.305, 19.54194, 19.345, 21.854]})
crs = {'init':'epsg:4326'}
geometry = [shapely.geometry.Point(xy) for xy in zip(postcodeDF['dlug_geo'], postcodeDF['szer_geo'])]

postcodeGDF = gpd.GeoDataFrame(postcodeDF,
                               crs = crs,
                               geometry = geometry)

postcodeGDF['geometry'] = postcodeGDF['geometry'].to_crs('+proj=tmerc +lat_0=0 +lon_0=19 +k=0.9993 +x_0=500000 +y_0=-5300000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs')

postcodeGDF.plot()
打印(gpd.show_versions())
提供:

SYSTEM INFO
-----------
python     : 3.7.4 (default, Aug  9 2019, 18:34:13) [MSC v.1915 64 bit (AMD64)]
executable : C:\Anaconda3\pythonw.exe
machine    : Windows-10-10.0.18362-SP0

GEOS, GDAL, PROJ INFO
---------------------
GEOS       : None
GEOS lib   : None
GDAL       : 2.3.3
GDAL data dir: None
PROJ       : 0.5.20
PROJ data dir: 

PYTHON DEPENDENCIES
-------------------
geopandas  : 0.6.3
pandas     : 0.25.1
fiona      : 1.8.4
numpy      : 1.16.5
shapely    : 1.6.4.post2
rtree      : 0.9.4
pyproj     : 1.9.6
matplotlib : 3.1.1
mapclassify: None
pysal      : None
geopy      : None
psycopg2   : None
控制台显示以下信息:

runfile('D:/Dydaktyka/SIPwT (1z2)/test.py', wdir='D:/Dydaktyka/SIPwT (1z2)')
0    POINT (18.69472 52.87500)
1    POINT (19.30500 51.82028)
2    POINT (19.54194 50.06861)
3    POINT (19.34500 49.85528)
4    POINT (21.85400 50.88528)
Name: geometry, dtype: geometry
Traceback (most recent call last):

  File "<ipython-input-1-6c6c8104c1e8>", line 1, in <module>
    runfile('D:/Dydaktyka/SIPwT (1z2)/test.py', wdir='D:/Dydaktyka/SIPwT (1z2)')

  File "C:\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 827, in runfile
    execfile(filename, namespace)

  File "C:\Anaconda3\lib\site-packages\spyder_kernels\customize\spydercustomize.py", line 110, in execfile
    exec(compile(f.read(), filename, 'exec'), namespace)

  File "D:/Dydaktyka/SIPwT (1z2)/test.py", line 28, in <module>
    postcodeGDF['geometry'] = postcodeGDF['geometry'].to_crs('+proj=tmerc +lat_0=0 +lon_0=19 +k=0.9993 +x_0=500000 +y_0=-5300000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs')

  File "C:\Anaconda3\lib\site-packages\geopandas\geoseries.py", line 423, in to_crs
    proj_in = pyproj.Proj(self.crs, preserve_units=True)

  File "C:\Anaconda3\lib\site-packages\pyproj\__init__.py", line 362, in __new__
    return _proj.Proj.__new__(self, projstring)

  File "_proj.pyx", line 129, in _proj.Proj.__cinit__

RuntimeError: b'no arguments in initialization list'
runfile('D:/Dydaktyka/SIPwT(1z2)/test.py',wdir='D:/Dydaktyka/SIPwT(1z2)'
0分(18.69472 52.87500)
1分(19.305051.82028)
2分(19.54194 50.06861)
3分(19.34500 49.85528)
4分(21.85400 50.88528)
名称:几何体,数据类型:几何体
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
运行文件('D:/Dydaktyka/SIPwT(1z2)/test.py',wdir='D:/Dydaktyka/SIPwT(1z2)'
运行文件中的文件“C:\Anaconda3\lib\site packages\spyder\u kernels\customize\spyderrcustomize.py”,第827行
execfile(文件名、命名空间)
文件“C:\Anaconda3\lib\site packages\spyder\u kernels\customize\spyderrcustomize.py”,第110行,在execfile中
exec(编译(f.read(),文件名,'exec'),命名空间)
文件“D:/Dydaktyka/SIPwT(1z2)/test.py”,第28行,in
后编码GDF['geometry']=后编码GDF['geometry'].到crs('+proj=tmerc+lat_0=0+lon_0=19+k=0.9993+x_0=500000+y_0=-5300000+ellps=GRS80+towgs84=0,0,0,0,0+units=m+no_defs'))
文件“C:\Anaconda3\lib\site packages\geopandas\geoseries.py”,第423行,在to crs中
proj_in=pyproj.proj(self.crs,preserve_units=True)
文件“C:\Anaconda3\lib\site packages\pyproj\\uuuuu init\uuuuuuuuu.py”,第362行,新文件__
返回项目项目新项目(self,projstring)
文件“_proj.pyx”,第129行,在项目中__
运行时错误:b'初始化列表中没有参数'

这意味着您的pyproj安装有问题。能否提供有关如何安装GeoPandas及其依赖项的更多详细信息?你能显示
geopandas.show_versions()
的输出吗?@joris谢谢你的回复,我修改了原来的帖子(我没有找到其他方法添加新信息),你能试试看
conda update pyproj
是否有帮助?另外,您到底是如何安装GeoPandas及其依赖项的?(更新你的帖子非常完美!)根据@joris的建议,我更新了pyproj模块,但没有帮助。我使用了Anaconda3-2019.10-Windows-x86_64安装文件。就我记忆所及,我只需要pip安装笛卡尔模块。pd、gpd、mplib、pyproj模块已经安装在最初的anaconda中。你说的“没有帮助”到底是什么意思。您仍然收到相同的错误消息,还是另一个错误消息?你现在的pyproj版本是什么?