Más

¿El cálculo de la latitud del centroide en ArcMap arroja el error 000539 en Arcpy?

¿El cálculo de la latitud del centroide en ArcMap arroja el error 000539 en Arcpy?


Puedo crear un campo de latitud centroide en ArcMap10.1 usando "Calcular geometría ..." en la tabla de atributos, pero cuando intento lo mismo usando: arcpy.CalculateField_management (bins_WGS84, "cent_lat", "! SHAPE.CENTROID.Y!" , "PYTHON_9.3"),

Recibo el siguiente error: arcgisscripting.ExecuteError: ERROR 000539: Error al ejecutar la expresión: GPVARIANTOBJECT0.CENTROID.Y. Solo sucede ocasionalmente, pero mata mi guión y me cuesta mucho tiempo / datos. En el conjunto de datos en particular que estoy probando, ocurre alrededor de 10 filas, aunque la geometría se ve bien y Arcmap no se queja al encontrar el centroide.

Sé que es posible, porque funciona para el mismo conjunto de datos en ArcMap, sin embargo, esta acción no aparece en la ventana Resultados.


Supongo que hay algo mal en tu geometría.

Intenta usarRepairGeometry_managementantes de su cálculo de campo.

Si esto no funciona, probablemente se necesite una solución.

yo usaríaFeatureToPoint_management, seguido porAddXY_management, seguido porSpatialJoin_analysis.

Editar: el mejor método podría ser a través de un UpdateCursor. Luego, puede usar un try / except para averiguar qué características están causando el problema e investigar más a fondo.

cursor = arcpy.da.UpdateCursor (bins_WGS84, ["cent_lat", "OID @", "SHAPE @ TRUECENTROID"]) para la fila en el cursor: intente: fila [0] = fila [2] [1] cursor.updateRow ( fila) excepto: imprimir "No se pudo agregar el valor Y a", fila [1] del fila del cursor

Ver el vídeo: Tutorial Arcgis Hidrology Arcgis