我需要控制分配给需要写入的 ESRI 形状文件属性的有效位数。
更新:我正在使用"round()",但是当我在QGIS属性表中检查结果时,它似乎不起作用。"问题"实际上可能出在QGIS中,用于表示小数。比较下面的"表单"视图和"表格"视图:数字在一个视图中四舍五入,而不是另一个。
表单视图
表视图
不确定这是否是文件的创建方式,但如果使用Geopandas创建shapefile,它与geopandas/pandas如何表示"float"或"float64"类型有关 - 即精度。
我通过在保存 to_file
时不使用 shapefile 格式来解决此问题,而是使用 Geopackage (GPKG)。否则,必须将浮点数表示为字符串,或者在保存时使用 float_format
参数(不确定它是否适用于 .to_file() ) - 请参阅下面的链接。
float64 与熊猫to_csv熊猫转换浮点数删除指数