Iterar tiempo (ModelBuilder)

Uso

  • Esta herramienta solo está disponible en la cinta ModelBuilder para su uso en modelos. La herramienta no está disponible desde el panel Geoprocesamiento ni desde Python.

  • La herramienta acepta entidades y tablas con un campo de fecha.

  • La herramienta itera y filtra las filas que corresponden a diferentes intervalos y extensiones temporales. Por ejemplo, puede iterar datos por hora para la extensión temporal completa de los datos o un subconjunto de ellos. La herramienta crea diferentes divisiones en zonas temporales que se pueden utilizar como entrada en otras herramientas.

  • Utilice los parámetros Hora de inicio de iteración y Hora de finalización de iteración para crear intervalos temporales a partir de un subconjunto temporal de los datos.

  • Utilice los parámetros Alinear fecha de inicio de la iteración con los datos y Alinear fecha de finalización de la a con los datos con los parámetros Hora de inicio de la iteración y Hora de finalización de la iteración para alienar el inicio y el final de la iteración con el valor datetime más cercano en los datos.

  • El inicio y el final de los intervalos temporales se calculan a partir de la combinación de los valores de los parámetros. La siguiente tabla muestra los resultados esperados en base a diferentes combinaciones de parámetros con el parámetro Omitir intervalos vacíos desactivado. Por ejemplo, los datos tienen una extensión datetime de 03/01/2022 a 31/01/2022. Con un intervalo de un día, si no se especifican los valores de los parámetros Hora de inicio de la iteración y Hora de finalización de la iteración, el primer intervalo temporal se iniciará el 03/01/2022 en función del inicio de los datos y finalizará el 01/02/2022.

    Hora de inicio de la iteraciónAlinear la fecha de inicio de la iteración con los datosHora de finalización de la iteraciónAlinear la fecha de finalización de la iteración con los datosInicio del primer intervalo de tiempoFin del último intervalo de tiempo

    03/01/2022

    01/02/2022

    01/01/2022

    Desactivado

    01/01/2022

    01/02/2022

    01/01/2022

    Activado

    03/01/2022

    01/02/2022

    01/02/2022

    Desactivado

    03/01/2022

    01/02/2022

    01/02/2022

    Activado

    03/01/2022

    31/01/2022

    01/01/2022

    Desactivado

    01/02/2022

    Desactivado

    01/01/2022

    01/02/2022

    01/01/2022

    Activado

    01/02/2022

    Desactivado

    03/01/2022

    01/02/2022

    01/01/2022

    Desactivado

    01/02/2022

    Activado

    01/01/2022

    31/01/2022

    01/01/2022

    Activado

    01/02/2022

    Activado

    03/01/2022

    31/01/2022

  • El parámetro Incluir inicio siempre se respeta para el primer intervalo de tiempo y el parámetro Incluir finalización siempre se respeta para el último intervalo de tiempo, independientemente de los valores de los parámetros Incluir inicio e Incluir fin. Para cada división temporal intermedia, la inclusión o exclusión de datos se basa en los valores de los parámetros. Por ejemplo, si los datos tienen valores del 01/01/2022 al 03/01/2022, la siguiente tabla muestra el resultado del recuento esperado con un intervalo de 1 día para las iteraciones de 01/01/2022 a 03/01/2022.

    Intervalo de tiempoRecuento con ambos parámetros desactivadosRecuento solo con Incluir inicio activadoRecuento solo con Incluir final activadoRecuento con ambos parámetros activados

    01/01/2022 a 02/01/2022

    1

    1

    2 (Incluir inicio siempre se respeta para el primer intervalo de tiempo)

    2

    02/01/2022 a 03/01/2022

    0

    1

    1

    2

    03/01/2022 a 04/01/2022

    0

    1

    0

    1

  • Cuando se usa el mismo campo datetime para los parámetros Hora de inicio de la iteración y Hora de finalización de la iteración, las filas con valores nulos se omitirán porque no corresponden a ninguna extensión de tiempo.

    Cuando se utilizan distintos campos datetime para los parámetros Hora de inicio de la iteración y Hora de finalización de la iteración, las filas con valores nulos se omitirán de forma predeterminada. Desactive el parámetro Omitir valores nulos para incluirlos en la iteración. En las tablas siguientes se muestra si se incluirá una fila para los intervalos de tiempo de salida del 01/01/2022 al 03/01/2022 con un intervalo de 1 día y el parámetro Incluir inicio activado.

    Por ejemplo, una fila tiene un valor de campo de hora de inicio nulo y el valor del campo de tiempo de finalización es 02/01/2022:

    Intervalo de tiempoResultado esperado

    01/01/2022 a 02/01/2022

    Incluido (porque hay un valor de fila nulo en el campo de inicio)

    02/01/2022 a 03/01/2022

    Incluido (porque el parámetro Incluir inicio está activado)

    03/01/2022 a 04/01/2022

    No incluido

    Por ejemplo, una fila tiene 02/01/2022 como campo de tiempo de inicio y el valor del campo de tiempo de finalización es nulo:

    Intervalo de tiempoResultado esperado

    01/01/2022 a 02/01/2022

    No incluido

    02/01/2022 a 03/01/2022

    Incluido (porque hay un valor de fila nulo en el campo de fin)

    03/01/2022 a 04/01/2022

    Incluido (porque hay un valor de fila nulo en el campo de fin)

    Si una fila tiene valores nulos tanto en el campo de tiempo de inicio como en el de finalización, la fila se incluirá en cada intervalo de tiempo de salida.

  • Desactive el parámetro Omitir divisiones en zonas vacías para ver todas las divisiones temporales en el resultado, incluidas las que tienen un recuento de filas de cero. De forma predeterminada, los segmentos vacíos se ocultarán.

  • Para cada iteración, la herramienta devuelve las siguientes salidas:

    • Capa de salida: capa con filas seleccionadas que coinciden con los criterios de intervalos de tiempo
    • Hora de inicio: inicio de cada intervalo temporal
    • Hora de finalización: finalización de cada intervalo temporal
    • Recuento: recuento de filas de cada intervalo temporal

  • Los dos parámetros de salida, Hora de inicio y Hora de finalización, se indican en formato de 24 horas. Si no se especifica una hora en los datos o en cualquier valor de parámetro, el valor límite predeterminado es 00:00:00.

  • Los valores de los parámetros Hora de inicio y Hora de finalización pueden utilizarse como sustitución de variables en línea para definir nombres de salida en otras herramientas. Para ello, marque el parámetro Formato de cadena de hora de salida para devolver una cadena de caracteres datetime sin caracteres especiales, como en el ejemplo siguiente.

    Salidas de herramienta como sustitución de variables en línea

    La hora siempre se añade a las cadenas de hora de inicio y fin. Para eliminar tiempo de esa cadena, utilice la herramienta Calcular valor y defina la expresión como "%Start Time%"[:11] + "_to_" + "%End Time%"[:11]. A continuación, la salida de la herramienta Calcular valor se puede utilizar como sustitución de variables en línea en la salida de la herramienta Copiar entidades.

    Salidas de la herramienta sin tiempo como sustitución de variables en línea

Parámetros

EtiquetaExplicaciónTipo de datos
Tabla de entrada

Tabla de entrada que se va a iterar.

Table View; Feature Layer
Intervalo de periodo de tiempo

Especifica el intervalo temporal que se utilizará para crear intervalos de tiempo. Solo son válidos los números enteros.

  • MinutosLos datos se dividirán por minutos.
  • HorasLos datos se dividirán por horas.
  • DíasLos datos se dividirán por días.
  • SemanasLos datos se dividirán por semanas.
  • MesesLos datos se dividirán por meses.
  • AñosLos datos se dividirán por años.
  • DécadasLos datos se dividirán por décadas.
  • SiglosLos datos se dividirán por siglos.
Time Unit
Campo de fecha de inicio

Un campo que se utilizará para definir la extensión temporal y la consulta para crear intervalos temporales.

La extensión temporal se puede modificar especificando otro valor datetime en el parámetro Hora de inicio de la iteración.

Field
Campo de fecha de fin
(Opcional)

Un campo que se utilizará para definir el final de la extensión temporal y la consulta para crear intervalos temporales.

El campo se puede agregar si los datos tienen campos de fecha separados para las horas de inicio y fin. Si los datos tienen un único campo para las horas de inicio y fin, deje este parámetro en blanco o defínalo en el mismo campo que el valor del Campo de hora de inicio.

Field
Hora de inicio de la iteración
(Opcional)

Crea un subconjunto de los datos que comienzan en y después del valor datetime especificado.

Date
Alinear la fecha de inicio de la iteración con los datos
(Opcional)

Especifica si el inicio de la iteración se alineará con la fecha más cercana de los datos.

  • Activado: el inicio de la iteración se alineará con la fecha más próxima de los datos que sea igual o posterior a la fecha especificada para el parámetro Hora de inicio de la iteración.

    Por ejemplo, si el valor del parámetro Hora de inicio de la iteración es 01/01/2022 y los datos comienzan a partir del 06/01/2022, la iteración empezará a partir del 06/01/2022 y dividirá los datos entre el intervalo de tiempo definido por el parámetro Intervalo de período de tiempo. En el caso de un intervalo de tiempo de un mes, la división será de 06/01/2022 a 06/02/2022, y así sucesivamente.

  • Desactivado: el inicio de la iteración se alineará con la fecha especificada para el parámetro Hora de inicio de la iteración. Esta es la opción predeterminada.

    Por ejemplo, si el valor del parámetro Hora de inicio de la iteración es 01/01/2022 y los datos comienzan a partir del 06/01/2022, la iteración seguirá empezando desde el 01/01/2022 y dividirá los datos por el intervalo de tiempo definido por el parámetro Intervalo de período de tiempo. En el caso de un intervalo de tiempo de un mes, la división será de 01/01/2022 a 01/02/2022, y así sucesivamente.

Boolean
Hora de finalización de la iteración
(Opcional)

Crea un subconjunto de los datos que terminan en una fecha igual o anterior al valor datetime especificado.

Date
Alinear la fecha de finalización de la iteración con los datos
(Opcional)

Especifica si el final de la iteración se alineará con la fecha más cercana en los datos.

  • Activado: el final de la iteración se alineará con la fecha más próxima de los datos que sea igual o anterior a la fecha especificada para el parámetro Hora de finalización de la iteración.

    Por ejemplo, si el valor del parámetro Hora de finalización de la iteración es el 31/12/2022 y los datos terminan el 28/12/2022, la iteración finalizará el 28/12/2022. El último intervalo puede ser inferior al intervalo de tiempo definido.

  • Desactivado: el final de la iteración se alineará con la fecha especificada para el parámetro Hora de finalización de la iteración. Esta es la opción predeterminada.

    Por ejemplo, si el valor del parámetro Hora de finalización de la iteración es el 31/12/2022 y los datos terminan el 28/12/2022, la iteración finalizará el 31/12/2022. El último intervalo se dividirá de acuerdo con el intervalo de tiempo, pero finalizará según el valor especificado en el valor de Hora de finalización de iteración datetime especificado.

Boolean
Incluir inicio
(Opcional)

Especifica si la hora de inicio se incluirá en cada intervalo de tiempo.

  • Activado: la hora de inicio se incluirá en cada intervalo de tiempo. Esta es la opción predeterminada.
  • Desactivado: la hora de inicio no se incluirá en cada intervalo de tiempo.
Boolean
Incluir fin
(Opcional)

Especifica si la hora de finalización se incluirá en cada intervalo de tiempo. Si se activa tanto Incluir inicio como Incluir fin, el mismo evento se contará dos veces. Si se produjo un evento al final del intervalo anterior, también se contará en el siguiente intervalo (incluir inicio). Puede ser útil en eventos continuos. Por ejemplo, un incendio lleva ardiendo tres días y se desea conocer el número total de registros de incendios nuevos y existentes

  • Activado: se incluirán los valores anteriores o iguales a la hora de finalización.
  • Desactivado: se incluirán los valores anteriores a la hora de finalización. Esta es la opción predeterminada.
Boolean
Omitir valores nulos
(Opcional)

Especifica si se incluirán las filas con valores datetime nulos. Este parámetro está disponible cuando los valores de los parámetros Campo de hora de inicio y Campo de hora de finalización tienen campos de fecha diferentes.

  • Avivado: no se incluirán las filas con valores datetime nulos. Esta es la opción predeterminada.
  • Desactivado: se incluirán las filas con valores datetimes nulos.

Desactive este parámetro en los siguientes casos:

  • El valor del parámetro Campo de hora de inicio es nulo: cualquier fila con un valor nulo en el valor del parámetro Campo de hora de inicio se incluirá en cada intervalo de tiempo hasta el final de la extensión de tiempo del valor del parámetro Campo de finalización.
  • El valor del parámetro Campo de hora de finalización es nulo: cualquier fila con un valor nulo en el valor del parámetro Campo de tiempo de finalización se incluirá en cada intervalo de tiempo, a menos que no corresponda a la consulta de intervalo de tiempo para el intervalo de tiempo en cuestión.
  • Los valores del parámetro Campo de hora de inicio y Campo de hora de finalización son nulos: cualquier fila con un valor nulo en los valores de los parámetros Campo de inicio y Campo de finalización se incluirá en cada intervalo de tiempo.

Boolean
Formato de cadena de hora de salida
(Opcional)

Especifica si se eliminarán caracteres reservados de los valores de los parámetros Hora de inicio y Hora de fin. Solo se conservarán los caracteres alfanuméricos y los guiones bajos.

  • Activado: se eliminarán los caracteres reservados de los valores de los parámetros Hora de inicio y Hora de fin. Por ejemplo, si el valor datetime es 2022-01-01 08:30:00, la cadena de caracteres con formato será 2022_01_01_08_30_00.
  • Desactivado: no se eliminarán los caracteres reservados de los valores de los parámetros Hora de inicio y Hora de fin. Esta es la opción predeterminada.
Boolean
Omitir intervalos vacíos
(Opcional)

Especifica si se eliminarán los intervalos de tiempo vacíos (número de filas = 0). Un intervalo de tiempo vacío no contiene filas.

  • Activado: se eliminarán los intervalos de tiempo vacíos. Por ejemplo, los datos de entrada no tienen registros para 02/01/2022 y 03/01/2022. Con un intervalo de un día de 01/01/2022 a 05/01/2022, esta opción le permite omitir estos dos intervalos de tiempo y no se devolverá ninguna capa vacía. Esta es la opción predeterminada.
  • Desactivado: no se eliminarán los intervalos de tiempo vacíos. Por ejemplo, los datos de entrada no tienen registros para 02/01/2022 y 03/01/2022. Con un intervalo de un día de 01/01/2022 a 05/01/2022, esta opción le permite mantener estos dos intervalos de tiempo y se devolverán capas vacías.
Boolean

Salida derivada

EtiquetaExplicaciónTipo de datos
Capa de tiempo de salida

Capa con filas seleccionadas que coinciden con los criterios del intervalo de tiempo.

Any Value
Hora de inicio

Hora de inicio de cada intervalo.

String
Hora de finalización

Hora de finalización de cada intervalo.

String
Recuento

El recuento de filas de cada intervalo.

Long

Entornos

Esta herramienta no utiliza ningún entorno de geoprocesamiento.