Skip to main content

ModelBuilder での反復子の使用例

反復子はバッチ処理を有効化し、複数の入力に対して 1 つまたは複数の処理を反復するのに便利です。

For

For ツールでは、指定された値の回数だけ、開始値と終了値が反復されます。

以下の図では、For 反復子が 500 ~ 2000 の値を反復し、値を 500 ずつ増分します。 For の出力は、バッファー ツールの バッファー距離 パラメーターとして、およびインライン変数置換として出力名で使用されます。

ModelBuilder での For の使用

While

While ツールは、条件が True または False になるまで反復処理を行います。

以下の図で、このモデルは、対象エリアと境界線を共有するすべてのブロック グループを選択し、その総人口を計算して、人口が閾値未満のレイヤーを作成します。たとえば、特定のブロック グループの周囲のクーポン提供に向けて、所定の母集団値を得ようとしているビジネスです。 行のカウント ツールは、テーブル ビューの作成 ツールに設定されている条件に合致する選択があるかどうかを確認します。 While ツールでは、行数が 0 でなくなるまでモデルが確実に実行されます。

ModelBuilder での While の使用

フィーチャ選択の反復

フィーチャ選択の反復 ツールは、フィーチャクラス内のフィーチャを反復します。

以下の図では、モデルは 5 つのカテゴリー 1 のハリケーンが通過した 100 メートル幅の帯によってどの程度 East Coast の土地被覆マップ領域が破壊されたかを計算します。 入力フィーチャ変数には、5 つの大西洋ハリケーンの軌道に 100 メートルのバッファーを持たせたフィーチャクラスを入力します。 入力ラスター変数には土地被覆ラスターを入力します。

フィーチャ選択の反復の使用方法

この例では、ハリケーンの名前が選択可能なグループ フィールドとして使用されます。選択されたフィーチャは ゾーン統計をテーブルに出力 ツールへの入力として使用され、ハリケーンの上陸中に破壊された土地被覆に関する統計情報付きの出力テーブルを生成します。

フィーチャ選択の反復 ツールでは、以下の 2 つを出力します。

  • 選択フィーチャ (ゾーン統計をテーブルに出力 ツールへの入力として接続されます)。

  • 出力テーブル変数の出力名におけるインライン変数として使用されるフィーチャの名前 (グループ フィールドに基づく) を含む値変数。

行選択の反復

行選択の反復 ツールは、テーブルの行を反復処理します。

以下の図では、1 日の異なる時間 (朝、昼、夕方、夜) における盗難事件の偏差楕円を作成し、犯罪パターンを発見します。

行選択の反復の使用方法

入力フィーチャクラス変数には、公共物破壊のインシデント ポイントを含むフィーチャクラスを入力します。 このフィーチャクラスには、インシデントが発生した時間 (文字列 Morning (朝)、Afternoon (昼)、Evening (夕方)、Night (夜)) を表すフィールド Crime_Peri (犯罪の時間) が含まれます。 このフィールドは選択可能なグループ フィールドとして使用され、選択された行は出力標準偏差楕円を作成するために使用されます。

このツールは、以下の 2 つを出力します。

  • 一意な犯罪の時間を表す、選択された行を含む [行選択] 変数。 これらの行は 分布指向性分析 ツールへの入力になります。

  • グループ フィールドの値 (Morning (朝)、Afternoon (昼)、Evening (夕方)、Night (夜)) を含む [値] 変数。 この値は出力標準偏差楕円変数の出力名におけるインライン変数として使用されます。

フィールドの反復

フィールドの反復 ツールは、テーブルのフィールドを反復処理します。

以下の図では、このモデルは フィールド演算 ツールを使用して複数のフィールド内の NULL 値をゼロに変換します。

フィールドの反復の使用方法

インシデント フィーチャ レイヤー変数には、日付別のインシデント数が表示される一意のフィールドがあります。 一部のフィールドには、値が欠損していることを示す NULL が格納されています。 この場合、フィールドの反復 ツールを使用し、ワイルド カードおよびフィルターされたフィールド リストのサブセットに基づいて日付をフィルターします。 この後、各フィールドが 属性検索 ツールに渡され、選択されたレコードが フィールド演算 ツールに渡されます。

このツールは、以下の 2 つを出力します。

  • 属性検索 ツールへの入力フィールド名として接続されている値変数。

  • 反復するフィールドの総数が格納されている [数] 変数。

フィールド値の反復

フィールド値の反復 ツールは、フィールド内の各値を反復処理します。

以下の図では、各国の貧困線を下回る人々の数に対して クラスター/外れ値分析 ツールを使用し、異なる距離で結果を比較します。 これらの距離は入力テーブル変数の Distance フィールドとして記録されます。

フィールド値の反復の使用方法

フィールド値の反復 ダイアログ ボックスでは、個別値 オプションがデフォルトでオンになり、テーブルの各個別値に対して反復が実行されます。 個別値 オプションをオフにすることでフィールドの各値に対して反復が実行され、入力フィールドに重複する値がある場合、同じ出力値が繰り返されます。

フィールド値の反復 の出力は、フィールドの値を含む値変数 1 つで、これは クラスター/外れ値分析 ツールの 距離バンドまたは距離の閾値 パラメーターとして使用されます。 [値] 変数は、インライン変数置換を使用した出力クラスター フィーチャクラス変数の出力ファイル名の作成に使用されます。

複数値の反復

複数値の反復 ツールは、値のリストを反復します。

以下の図では、異なるドライブおよびワークスペースに格納された複数のフィーチャクラスのマップ投影を変更します。 投影された出力フィーチャクラスは 1 つの出力データベースに書き込まれます。

複数値の反復の使用方法

ツールの出力は値 1 つで、これは 投影変換 ツールに入力として接続されるフィーチャクラスの文字列です。

データセットの反復

データセットの反復 ツールは、ワークスペースまたはフィーチャ データセット内のデータセットを反復処理します。

以下の図では、モデルは入力データセット変数、ワークスペース変数に含まれるすべてのフィーチャ データセットをコピーします。 反復の実行はフィーチャ データセット タイプのみに制限されます。

データセットの反復の使用方法

このツールは、以下の 2 つを出力します。

フィーチャクラスの反復

フィーチャクラスの反復 ツールは、ワークスペースまたはフィーチャ データセット内のフィーチャクラスを反復します。

以下の図では、モデルは入力フィーチャクラス変数における Blocks および Parcels フィーチャクラスの人口密度を検索します。

フィーチャクラスの反復の使用方法

反復の実行はポリゴン フィーチャ タイプを選択することによって制限されます。この場合、反復子は Blocks および Parcels ポリゴン フィーチャクラスのみで反復を実行します。

このツールは、以下の 2 つを出力します。

  • フィールドの追加 ツールに入力として接続される、出力フィーチャクラス変数 (Blocks および Parcels)。

  • 他のツールでインライン変数 %名前% として使用できる名前変数 (この例では Blocks および Parcels)。

ファイルの反復

ファイルの反復 ツールは、フォルダー内のファイルを反復処理します。

以下の図では、入力フォルダー変数はラスターに変換するテキスト ファイルのリストを保持しています。 反復の実行はワイルドカード f* およびファイル拡張子 .txt によって制限されます。このため、f または F の文字で始まるテキスト タイプのファイルでのみ反復が実行されます。

ファイルの反復の使用方法

このツールは、以下の 2 つを出力します。

  • ラスターのコピー ツールに入力として接続されるファイル変数 (focaldem1.txtfocaldem2.txt、または focaldem3.txt)。

  • テキスト ファイルの名前を含む名前変数 (focaldem1、focaldem2、focaldem3)。 この名前変数は次のツールの出力においてインライン変数 %名前% として使用されます。

レイヤーの反復

レイヤーの反復 ツールは、マップ内のレイヤーを反復処理します。

以下の図では、入力マップ変数は投影変換されるレイヤーのリストを示しています。 この反復処理は、マップのポイント フィーチャ レイヤーの反復のみに制限されています。 レイヤーの反復 ツールの出力は、座標系 ツールを使用して定義された座標系に対してテストされます。 レイヤーの座標系が定義された座標系と一致しない場合、出力の False 変数が true に変わり、接続されている 投影変換 ツールが実行されて、受信レイヤーが指定された座標系に投影変換されます。

レイヤーの反復の使用方法

時間の反復

時間の反復 ツールは、日付フィールドの時間を反復処理します。

以下の例では、乾燥日を除いた 1981 ~ 2020 年の降水量データが入力テーブルに含まれています。 時間の反復 ツールは、Date フィールドを使用して入力データを 1 か月の時間スライスに分割します。 各月の選択行を基に、平均降水量と降雨日数が、統計サマリー ツールを使用して計算されます。 フィールド演算 ツールが、集計されたテーブルでインライン変数置換を使用して反復ごとに書式設定済みの 開始時間 の値を追加するために使用されます。 各月の集計テーブルが、アペンド ツールを使用して追加され、単一のテーブルが生成されます。

時間の反復の使用方法

以下の例では、2000 ~ 2018 年のトルネード データと大きさが入力テーブルに含まれています。 このモデルは、2008 ~ 2018 年のデータのサブセットでの 5 月と 6 月におけるトルネードの頻度を大きさ別に集計します。 時間の反復 ツールは、Date フィールドを使用して入力データを 1 年の時間スライスに分割します。 このツールは、反復開始時間反復終了時間時間定義 の各パラメーターで定義されている値に基づいてデータ範囲を制限します。 統計サマリー ツールを使用してトルネードが集計され、フィールド演算 ツールによって年が出力に追加されます。 最後に、各年の出力が単一のテーブルに追加されます。

時間定義パラメーターを指定した時間の反復の使用

ラスターの反復

ラスターの反復 ツールは、ワークスペース内のラスターを反復処理します。

以下の図では、モデルはグリッド データセットをリサンプリングし、詳細な解析用のサブセットを抽出します。

ラスターの反復の使用方法

入力ラスター変数には、グリッド、画像、.tiff ファイルを含むフォルダーを入力します。 この場合、反復の実行はワイルドカード A* およびグリッドのラスター タイプによって制限されます。このため、a または A の文字で始まるラスター、およびグリッドについてのみ反復が実行されます。

このツールは、以下の 2 つを出力します。

  • リサンプル ツールに入力として接続される、出力ラスター変数 (Aland、Aparcel、Aroad)。

  • リサンプル および サブセットの抽出 ツールの出力名にインライン変数 %名前% として使用される名前変数。

テーブルの反復

テーブルの反復 ツールは、ワークスペースのテーブルを反復処理します。

テーブルの反復 (dBASE テーブル)

以下の図では、モデルは各州の土地被覆テーブルを土地被覆タイプで置き換え、領域を合計する形で土地被覆の各クラスにおける統計情報を集計します。

テーブルの反復の使用方法

入力ワークスペース変数にはテーブルを含むフォルダーを入力します。 反復の実行はワイルドカード L* および dBASE のテーブル タイプによって制限されます。このため、l または L の文字で始まる dBASE テーブルでのみ反復が実行されます。

このツールは、以下の 2 つを出力します。

  • ピボット テーブル ツールに入力として接続される、出力テーブル変数 (Landcover_Arizona、Landcover_California、Landcover_Nevada)。

  • ピボット テーブル および 統計サマリー ツールの出力名にインライン変数 %名前% として使用される名前変数。

テーブルの反復 (Excel テーブル)

以下の図では、モデルは Excel テーブル内のすべてのシートを反復処理してこれらをジオデータベースにエクスポートします。 入力 Excel テーブルは反復子のワークスペースとして機能します。 このツールは、Excel ワークスペース内の個々のシートへの出力パスを作成し、テーブルのエクスポート ツールの出力名のインライン変数として使用されるシートの名前も返します。

テーブルの反復の使用

テーブルの反復 (CSV テーブル)

以下の例では、テーブルの反復 ツールは、.csv ファイルが含まれているフォルダーを反復処理します。 このツールは、個々の .csv ファイルへの出力パスを作成し、XY テーブル → ポイント ツールの出力名のインライン変数として使用される .csv ファイルの名前も返します。 XY テーブル → ポイント ツールは、各 .csv ファイルから XY 座標をとり、対応するフィーチャクラスを作成します。

CSV 入力でのテーブルの反復の使用

ワークスペースの反復

ワークスペースの反復 ツールは、フォルダー内のワークスペースを反復処理します。

以下の図では、モデルはフォルダー内に格納されている Arizona という名前のジオデータベースに格納されているラスターを使用してモザイクを作成します。

ワークスペースの反復の使用方法

反復の実行はワイルドカード Ar* およびファイル ジオデータベースのワークスペース タイプによって制限されます。このため、Ar の文字で始まる名前のファイル ジオデータベースでのみ反復が実行されます。

このツールは、以下の 2 つを出力します。