5 votos

¿Cambiar el nombre las 1.200 tramas en Geodatabase de archivos usando ArcPy?

He sido encargado de cambiar el nombre de una gran cantidad de archivos ráster en una geodatabase de archivos (ArcGIS estilo).

Yo estoy tomando los datos meteorológicos que tiene un formato de nombre como tal: "G"mmddhhhh Estoy tratando de agregar un año de la etiqueta entre la G y mes: "G"yyyymmddhhhh

Esta es la función que he escrito:

# ----------------------------------------------------------------------------- #
@timeit
def renameRasters(FGDB):
    origdir = arcpy.env.workspace
    arcpy.env.workspace = FGDB

    for rstr in arcpy.ListRasters("G*"):
        try:
            newrstr = "G" + "2014" + rstr.replace("g", "")
            arcpy.Rename_management(rstr, newrstr)

        except:
            print "Failed to rename: " + rstr

    arcpy.env.workspace = origdir
    return None
# ----------------------------------------------------------------------------- #

Esta función funciona bien para una pequeña cantidad media de rásteres dentro de un FGDB y tarda aproximadamente 1,5 segundos por trama cambiado de nombre. Tengo problemas cuando hay un gran número de archivos para el nombre. 1,200 archivos de toma > 10 horas. A la misma velocidad que los más pequeños de trama conjuntos de esto debería tomar en < 1 hora...

¿Alguien tiene una idea sobre cómo hacer que este proceso vaya más rápido?

Si no voy a configurarlo para que se ejecute durante el fin de semana.

Debo mencionar que estoy usando ArcGIS 10.2.2.

-2voto

Chad Miller Puntos 783

He utilizado Maestro cambie mucho para tareas similares que suena con mucho éxito.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X