问题描述
我有一个需要写入 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 (将#修改为@)