pymongo.errors.OperationFailure location object expected, location array not in correct format

在mongodb中对geojson格式的属性值loc创建空间索引(2dsphere)时,报“pymongo.errors.OperationFailure location object expected, location array not in correct format”错误。
我的数据截图如下:
pymongo.errors.OperationFailure location object expected, location array not in correct format

这个错误的原因是json数据的坐标值为投影坐标,而建立空间索引时的输入必须为地理坐标(经纬度),所以必须先进行由投影坐标到经纬度的转换。转换的代码可以参考我另一篇博客:
https://blog.csdn.net/fred240011/article/details/81217472

转换完之后的样子如下:
pymongo.errors.OperationFailure location object expected, location array not in correct format
接下来创建索引就成功了

补充:当geojson对应的地理对象的拓扑关系出错的时候也会报此错误,比如一个有自相交问题的shp文件:
pymongo.errors.OperationFailure location object expected, location array not in correct format