時間の反復 (Iterate Time) (モデル ツール)
サマリー
使用法
このツールはモデルで使用する ModelBuilder からのみ利用できます。 このツールは、ジオプロセシング ウィンドウまたは Python からは利用できません。
このツールは、フィーチャおよび日付フィールドを含むテーブルを受け取ります。
このツールは、異なる時間間隔と時間範囲に含まれる行の反復処理およびフィルター処理を実行します。 たとえば、データまたはデータのサブセットの時間範囲全体にわたって、1 時間ごとにデータを反復処理することができます。 このツールは、他のツールへの入力として使用できる異なる時間的スライスを作成します。
時間定義 パラメーターを使用し、特定の月や曜日を得るために行をフィルターします。 たとえば、時間ステップ間隔 値を 1 週間として、データを週単位で反復処理する場合、時間定義 が 土曜日 と 日曜日 に設定されていれば、各時間的スライスは土曜日と日曜日のデータのみを返します。
サブセット パラメーターを使用すると、時間的スライスごとに 1 つ以上のサブセットを作成できます。 次のテーブルでは時間的スライスが 2022 年 1 月 1 日午前 1 時 (2022-01-01 01:00:00) から 2022 年 1 月 2 日午前 1 時 (2022-01-02 01:00:00) までと仮定した場合の、異なる サブセット遅延 値と サブセット期間 値の例を示します。 ケース列の番号は、以下の表の番号に対応します。
ケース
サブセット値
結果

サブセット遅延: 2 時間
サブセット期間: 2 時間
午前 3 時 (2022-01-01 00:03:00) から午前 5 時 (2022-01-01 00:05:00) までのデータが返されます。

サブセット遅延: 2 時間
サブセット期間: 2 時間
サブセット遅延: 8 時間
サブセット期間: 4 時間
午前 3 時 (2022-01-01 00:03:00) から午前 5 時 (2022-01-01 00:05:00)、午前 9 時 (2022-01-01 00:09:00) から午後 1 時 (2022-01-01 00:13:00) までのデータが返されます。

サブセット遅延: 2 時間
サブセット期間: なし
午前 3 時 (2022-01-01 00:03:00) から翌日午前 1 時 (2022-01-01 00:01:00) までのデータが返されます。

サブセット遅延: 2 時間
サブセット期間: 0 時間
午前 3 時 (2022-01-01 00:03:00) のデータが返されます。

反復開始時間 および 反復終了時間 パラメーターを使用して、データの時間的サブセットから時間的スライスを作成します。
データへ反復開始日時のスナップ および データへ反復終了日時のスナップ パラメーターを、反復開始時間 および 反復終了時間 パラメーターとともに使用して、反復の開始と終了をデータ内の最も近い日時の値に合わせます。
これらのパラメーター値の組み合わせに基づいて時間的スライスの開始と終了が計算されます。 下の表は、空のスライスをスキップ パラメーターをオフにした状態で、異なるパラメーターの組み合わせに基づいて期待される結果を示しています。 たとえば、データは、2022-01-03 ~ 2022-01-31 の範囲を含んでいます。 1 日の間隔を使用し、反復開始時間 および 反復終了時間 パラメーターの値が指定されない場合、最初の時間的スライスは、データの開始に基づいて 2022-01-03 から開始し、2022-02-01 に終了します。
反復開始時間
データへ反復開始日時のスナップ
反復終了時間
データへ反復終了日時のスナップ
最初の時系列スライスの開始
最後の時系列スライスの終了
2022-01-03
2022-02-01
2022-01-01
オフ
2022-01-01
2022-02-01
2022-01-01
オン
2022-01-03
2022-02-01
2022-02-01
オフ
2022-01-03
2022-02-01
2022-02-01
オン
2022-01-03
2022-01-31
2022-01-01
オフ
2022-02-01
オフ
2022-01-01
2022-02-01
2022-01-01
オン
2022-02-01
オフ
2022-01-03
2022-02-01
2022-01-01
オフ
2022-02-01
オン
2022-01-01
2022-01-31
2022-01-01
オン
2022-02-01
オン
2022-01-03
2022-01-31
開始を含む および 終了を含む パラメーターの値にかかわらず、最初の時間的スライスの場合は、開始を含む パラメーターが常に順守され、最後の時間的スライス場合は、終了を含む パラメーターが常に順守されます。 中間の各時間的スライスの場合、データの含有および除外は、パラメーター値に基づきます。 たとえば、データが 2022-01-01 ~ 2022-01-03 の値を含んでいる場合、下の表は、2022-01-01 ~ 2022-01-03 にわたる反復の場合に 1 日の間隔を使用して期待される数の結果を示しています。
タイム スライス
両方のパラメーターをオフにした場合の数
開始を含むのみをオンにした場合の数
終了を含むのみをオンにした場合の数
両方のパラメーターをオンにした場合の数
2022-01-01 ~ 2022-01-02
1
1
2 (最初の時間的スライスの場合、開始を含む が常に順守されます)
2
2022-01-02 ~ 2022-01-03
0
1
1
2
2022-01-03 ~ 2022-01-04
0
1
0
1
サブセット パラメーターは 開始を含む パラメーターと 終了を含む パラメーターの包含の設定を順守します。
反復開始時間 および 反復終了時間 パラメーターに関して同じフィールドが使用された場合、NULL 値を含む行は、どの時間範囲にも含まれないため、スキップされます。
反復開始時間 および 反復終了時間 パラメーターに関して異なるフィールドが使用された場合、NULL 値を含む行は、デフォルトでスキップされます。 NULL 値をスキップ パラメーターをオフにすると、NULL 値が反復に含まれます。 下の表は、1 日の間隔を使用し、開始を含む パラメーターをオンにした場合に、2022-01-01 ~ 2022-01-03 の出力タイム スライスに行が含まれるかどうかを示しています。
たとえば、以下の表では、ある行が NULL の開始時間フィールドの値を含み、終了時間フィールドの値が 2022-01-02 であるとします。
タイム スライス
期待される結果
2022-01-01 ~ 2022-01-02
含まれる (行の NULL 値が開始フィールドにあるため)
2022-01-02 ~ 2022-01-03
含まれる (開始を含む パラメーターがオンであるため)
2022-01-03 ~ 2022-01-04
含まない
たとえば、以下の表では、ある行が 2022-01-02 を開始時間フィールドの値として含み、終了時間フィールドの値が NULL であるとします。
タイム スライス
期待される結果
2022-01-01 ~ 2022-01-02
含まない
2022-01-02 ~ 2022-01-03
含まれる (行の NULL 値が終了フィールドにあるため)
2022-01-03 ~ 2022-01-04
含まれる (行の NULL 値が終了フィールドにあるため)
ある行が開始時間フィールドと終了時間フィールドの両方に NULL 値を含んでいる場合、その行は、すべての出力タイム スライスに含まれます。
空のスライスをスキップ パラメーターをオフにすると、0 の行数を含む時間的スライスを含めて、出力内のすべての時間的スライスが表示されます。 デフォルトでは、空のスライスは非表示になります。
各反復処理では、ツールは次の出力を返します。
出力レイヤー— 時間的スライスの条件に一致する選択された行を含むレイヤー。
開始時間— 時間的スライスごとの開始時間
終了時間— 時間的スライスごとの終了時間
個数— 各時間的スライス内の行の数
2 つの出力パラメーター 開始時間 および 終了時間 は、24 時間形式です。 時間がデータ内でも、どのパラメーター値でも指定されない場合、デフォルトのカットオフ時間は 00:00:00 です。
開始時間 および 終了時間 パラメーターの値は、他のツールで出力名を定義するために、インライン変数置換として使用できます。 これを行うには、下の例のように特殊文字を含まない日時文字列を返すために、出力時間文字列の形式 パラメーターをオンにします。

時間が、開始時間と終了時間の文字列に常に追加されます。 その文字列から時間を削除するには、値の計算 ツールを使用して、式を
"%Start Time%"[:11] + "_to_" + "%End Time%"[:11]に設定します。 次に、値の計算 ツールの出力を、フィーチャのコピー ツールの出力でインライン変数置換として使用できます。
パラメーター
| ラベル | 説明 | データ タイプ |
|---|---|---|
|
入力テーブル |
反復処理する入力テーブル。 |
Table View; Feature Layer |
|
時間定義 (オプション) |
データに適用されるフィルターを指定します。
|
String |
|
月 (オプション) |
データのフィルタリングに使用される月を指定します。 このパラメーターは、時間定義 パラメーター値が 月 に設定されている場合にアクティブになります。
|
String |
|
日 (オプション) |
データのフィルタリングに使用される曜日を指定します。 このパラメーターは、時間定義 パラメーター値が 日 に設定されている場合にアクティブになります。
|
String |
|
時間ステップの間隔 |
時間スライスの作成に使用される時間間隔。 有効な入力は、整数のみです。 |
Time Unit |
|
サブセット (オプション) |
各反復に対する 1 つ以上の時間的サブセット。 各サブセットは、サブセット遅延 値と サブセット期間 値のペアによって定義されます。 各時間スライスの開始は サブセット遅延 値でオフセットされ、スライスの時間範囲は サブセット期間 値で定義されます。 たとえば、ある時間スライスが 2022 年 1 月 1 日午前 1 時 (2022-01-01 01:00:00) から 2022 年 1 月 2 日午前 1 時 (2022-01-02 01:00:00) までで、サブセット遅延 値が 2 時間であるとします。
値テーブル列:
|
Value Table |
|
開始時間フィールド |
時間範囲 (または時間範囲の開始) を定義し、検索して時系列スライスを作成するために使用されるフィールド。 このフィールドは、データセットの反復処理に使用される時間単位に基づいて、Date または Date Only、もしくは Time Only タイプにすることができます。 反復開始時間 パラメーターで異なる日時値を指定することによって、時間範囲を変更することができます。 |
Field |
|
終了時間フィールド (オプション) |
時間範囲の終了を定義し、検索して時系列スライスを作成するために使用されるフィールド。 このフィールドのフィールド タイプは 開始時間フィールド パラメーター値のフィールド タイプと一致している必要があります。 データが開始時間と終了時間に関して別々の日付フィールドを含んでいる場合、このフィールドを追加できます。 データが開始時間と終了時間に関して 1 つのフィールドを含んでいる場合、このパラメーターを空白のままにするか、開始時間フィールド の値と同じフィールドに設定します。 |
Field |
|
反復開始時間 (オプション) |
指定した時間、日付、日時以降に開始するデータのサブセットを作成する開始時間。 この値は 開始時間フィールド パラメーターに設定したフィールド タイプと一致している必要があります。 |
Date |
|
データへ反復開始日時のスナップ (オプション) |
反復の開始をデータ内の最も近い日付に合わせるかどうかを指定します。
|
Boolean |
|
反復終了時間 (オプション) |
指定した時間、日付、日時以前に終了するデータのサブセットを作成する終了時間。 この値は 終了時間フィールド パラメーターに設定したフィールド タイプと一致している必要があります。 |
Date |
|
データへ反復終了日時のスナップ (オプション) |
反復の終了をデータ内の最も近い日付に合わせるかどうかを指定します。
|
Boolean |
|
開始を含む (オプション) |
開始時間が各タイム スライスに含まれるかどうかを指定します。
|
Boolean |
|
終了を含む (オプション) |
終了時間が各タイム スライスに含まれるかどうかを指定します。 開始を含む と 終了を含む の両方をオンにすると、同じイベントを 2 回数えます。 イベントが前のスライスの終了時に発生した場合、そのイベントは、次のスライスでも数えられます (開始を含む) 。 これは、連続的なイベントに役立つことがあります。 たとえば、火災が 3 日間燃え続けており、新しい火災の記録と既存の火災の記録の総数を知りたい場合です。
|
Boolean |
|
NULL 値をスキップ (オプション) |
NULL の日時値を含む行が含まれるかどうかを指定します。 このパラメーターは、開始時間フィールド パラメーターおよび 終了時間フィールド パラメーターが異なる日付フィールドである場合に使用できます。
次の場合、このパラメーターをオフにします。
|
Boolean |
|
出力時間文字列の形式 (オプション) |
予約文字が出力 開始時間 および 終了時間 パラメーター値から削除されるかどうかを指定します。 英数字およびアンダースコアのみが維持されます。
|
Boolean |
|
空のスライスをスキップ (オプション) |
空のタイム スライスが削除されるかどうかを指定します。 空のタイム スライスは、行を含みません。
|
Boolean |
派生した出力
| ラベル | 説明 | データ タイプ |
|---|---|---|
|
出力時間レイヤー |
タイム スライスの条件に一致する選択された行を含むレイヤー。 |
Any Value |
|
開始時間 |
各スライスの開始時間。 |
String |
|
終了時間 |
スライスごとの終了時間 |
String |
|
個数 |
各スライス内の行の数。 |
Long |
環境
このツールは、ジオプロセシング環境を一切使用しません。
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい