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

gdf.to_file 数值处理

如何解决gdf.to_file 数值处理

我有一个需要写入 shapefile 的 Geopandas 数据框。它包含两个数值字段 A 和 B。A 中的所有值都是 1,B 中的所有值都是 0。它们是这样添加的:

gdf['A'] = 1
gdf['B'] = 0

此时如果我这样做:

print(gdf['A'].dtype)
print(gdf['B'].dtype)

我会得到

int64
int64

如果我这样做:

gdf.to_file(new_shapefile.shp)

当我在 ArcMap 10.2 的输出 shapefile 中检查它们的字段类型时,两个字段都显示为“Double”类型,而当我检查 QGIS 时,它们都显示为“qlonglong/integer64”。

我也尝试在 ArcMap 中添加空白字段“short”和“double”进行测试,但这次新添加的字段在 QGIS 中分别显示为“int/integer”和“double/Real”。


这一切的原因是什么?如果我希望在 ArcMap 中签入时 gdf.to_file输出具有“int/integer”字段,我该怎么办?

我的 Python 3.8 版,geopandas 0.9.0

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