He estado usando "in_memory" bastante recientemente. Puede ser muy útil, ya que tiene el potencial de aumentar drásticamente las velocidades de procesamiento para ciertas tareas, sin embargo, si está trabajando con conjuntos de datos muy grandes, puede causar que su programa se bloquee.
Puede usar "in_memory" para definir los resultados del proceso ... a menudo, si estoy realizando una tarea en una clase de entidad, la copiaré primero en el espacio de trabajo "in_memory":
inFeature = r'C:\myDir.gdb\myFeature'
memoryFeature = "in_memory" + "\\" + "myMemoryFeature"
arcpy.CopyFeatures_management(inFeature, memoryFeature)
Tenga en cuenta que no tiene que concatenar memoryFeature juntos como lo hice, podría escribirlo como "in_memory \ myMemoryFeature", simplemente me gusta hacerlo de esa manera para alternar entre "in_memory" y un directorio físico fácilmente. Luego puede realizar procesos en su función en la memoria. Cuando haya terminado, puede revertir el proceso para guardarlo nuevamente en un directorio.
Podría estar equivocado, pero creo que no es lo mismo que crear una capa de entidades. las capas de entidades le dan acceso a métodos de selección y otras operaciones específicas de capa. Piense en el directorio "in_memory" como el vector equivalente al objeto ráster (raster = arcpy.Raster (myRasterLocation))
Para limpiar después de usar "in_memory" simplemente agregue la siguiente línea de código:
arcpy.Delete_management("in_memory")
Espero que ayude.