微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

GeoPandas .to_crs() 方法不转换

如何解决GeoPandas .to_crs() 方法不转换

我正在尝试将一些数据集转换为相同的坐标系 (NC2264)

NC2264 = 'epsg:2264'

sfd_subs = pd.read_csv(r'FILE_LOCATION.csv')
wake_shapes = gpd.GeoDataFrame.from_file(r'FILE_LOCATION.shp').to_crs(NC2264)

sfd_subs = gpd.GeoDataFrame(sfd_subs,geometry=gpd.points_from_xy(sfd_subs.Longitude,sfd_subs.Latitude),crs='epsg:4326')
sfd_subs.to_crs(NC2264)

print(sfd_subs.crs)

shapefile 转换工作正常,但“sfd_subs”保持不变。我没有收到任何错误

我在顶部添加了 5 个正确的转换,而在底部添加了未更改的转换。

epsg:4326
0       POINT (2641914.208 1398556.771)
1       POINT (2642559.277 1398183.388)
2       POINT (2641705.300 1398352.924)
3       POINT (2641716.844 1397826.942)
4       POINT (2674989.747 1419749.281)
                     ...               
3332             POINT (-78.135 35.506)
3333             POINT (-78.130 35.504)
3334             POINT (-78.123 35.530)
3335             POINT (-78.104 35.537)
3336             POINT (-78.087 35.562)

因为我没有收到任何错误,所以我不确定最好的行动方案是什么。

解决方法

您必须将转换后的 GeoDataFrame 分配给变量,因为该函数不会就地修改它。

# instead of only writing: sdf_subs.to_crs(NC2264),assign it back to variable
sdf_subs = sfd_subs.to_crs(NC2264)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。