複数のレイヤーを 1 つにマージ

ビデオ

このチュートリアルは、ビデオでも利用できます。

マージ ツールの構成

[マージ] ジオプロセシング ツールでは、複数のレイヤーをマージできますが、これらのレイヤーが同じフィーチャ タイプの場合に限ります。 たとえば、2 つのライン レイヤーをマージすることはできますが、ライン レイヤーとポリゴン レイヤーをマージすることはできません。 このツールを使用して、陸地を表す 2 つのポリゴン レイヤーをマージします。

  1. ノルウェーのプロジェクト パッケージ」をダウンロードします。

    Norway.ppkx という名前のファイルが、コンピューターにダウンロードされます。 .ppkx ファイルは ArcGIS Pro プロジェクト パッケージです。これには、ArcGIS Pro で開くことができるマップ、データ、その他のファイルが含まれます。

  2. コンピューター上で、ダウンロードしたファイルを選択します。 [Norway.ppkx] をダブルクリックして ArcGIS Pro で開きます。 サイン インを求められたら、ArcGIS アカウントを使用して、サイン インします。
    注意:

    ArcGIS Pro へのアクセス権限または組織アカウントがない場合は、ソフトウェア アクセスのオプションをご参照ください

    ノルウェーのマップが表示されます。

    ノルウェーのマップ

    このマップには、[NorwayLand] (薄い緑色) と [NorwayMinorIslands] (濃い緑色) という 2 つのポリゴン レイヤーがあります。

    ノルウェーのマップの詳細

    注意:

    このマップのデータは「Natural Earth」から取得されたものです。

    プロジェクトでは、すべての陸地ポリゴンを 2 つのレイヤーとして管理するよりも、1 つのレイヤーとして管理した方が簡単です。 [マージ] ジオプロセシング ツールを使用して、すべての陸地部分を含む新しいレイヤーを作成します。

  3. リボンの [解析] タブをクリックします。 [ツール] グループで、展開ボタンをクリックします。

    ツール ギャラリーの解析タブおよび展開ボタン

    ギャラリーが開き、よく使用するツールがいくつか表示されます。

  4. 下にスクロールします。 [データの管理] グループで [マージ] をクリックします。

    ツール ギャラリーのマージ ボタン

    [ジオプロセシング] ウィンドウが開き、[マージ] ツールのパラメーターが表示されます。 このツールを実行すると、複数の入力レイヤーが結合されて新しい 1 つの出力レイヤーになります。

    マージ ツールの図

    ヒント:

    [マージ] ツールの詳細を確認するには、[ジオプロセシング] ウィンドウにあるヘルプ ボタンをクリックします。

    ヘルプ ボタン

  5. [ジオプロセシング] ウィンドウの [入力データセット][NorwayLand][NorwayMinorIslands] を選択します。

    [出力データセット] フィールドが更新されて [NorwayLand_Merge] になります。

  6. [出力データセット] フィールドをクリックします。

    パスが表示されます。 デフォルトでは、新しいデータセットがプロジェクトのジオデータベースに格納されます。

    出力データセット フィールドのパス

    出力データセットのデフォルトの場所と名前をそのまま使用します。

フィールド マップの構成

入力レイヤーに一致するフィールドがすべて含まれていることが分かっている場合は、このツールをすぐに実行できます。 一方で、一致しないフィールドを含むレイヤーをマージしなければならないこともあります。 ここでは、このケースを説明します。 [フィールド マップ] パラメーターを使用して、レイヤーが正しくマージされており、重要な属性情報が失われていないことを確認します。

  1. [ジオプロセシング] ウィンドウの [フィールド マップ] で、[編集] をクリックします。

    Edit ボタン

    [フィールド プロパティ] ウィンドウが表示されます。

  2. [フィールド プロパティ] ウィンドウで、[リセット] をクリックします。

    リセット ボタン

  3. [フィールド マップのリセット] ウィンドウで、[はい] をクリックします。

    リセットすることで、両方の入力レイヤーのフィールドが [フィールド マップ] に含まれます。

  4. [フィールド][featurecla (2)] をクリックします。

    [(2)] ラベルは、この出力フィールドに関連しているソース フィールドが 2 つ存在することを示します。 [テーブル] にある情報は、[featurecla] というフィールドがどちらの入力レイヤーにも存在することを示します。

    featurecla フィールドの情報

    これら 2 つのフィールドの内容がマージされ、出力レイヤー内で新しい 1 つの [featurecla] フィールドになります。

  5. [出力フィールド][min_zoom] をクリックします。

    min_zoom フィールド

    このフィールドには、[NorwayLand] レイヤーから取得された 1 つのソースしかありません。

    属性テーブルを表示して、これに相当するフィールドが別の名前で [NorwayMinorIslands] レイヤーに存在するかどうかを確認します。

  6. [フィールド プロパティ] ウィンドウを閉じます。 [コンテンツ] ウィンドウで [NorwayLand] を右クリックしてから [属性テーブル] を選択します。

    レイヤーのショートカット メニューにある属性テーブル

    属性テーブルが表示されます。

    ヒント:

    該当するレイヤーを選択し、Ctrl + T キーを押して、属性テーブルを開くこともできます。

  7. [NorwayMinorIslands] レイヤーの属性テーブルも開きます。
  8. 属性テーブルの上にある [NorwayMinorIslands] タブを右クリックしてから [新規タブ グループを上下に並べる] を選択します。

    テーブルのショートカット メニューの新規タブ グループを上下に並べる

    これで、両方のテーブルを同時に表示できるようになりました。 [min_zoom] フィールドと [zoom_level] フィールドには、よく似た情報が格納されています。 どちらのフィールドでも、フィーチャを Web マップに表示する場合のズーム レベルが推奨されています。

    属性テーブル内の min_zoom フィールドと zoom_level フィールド

    これら 2 つのフィールドをマージして、出力レイヤー内で 1 つのフィールドにします。

  9. [ジオプロセシング] ウィンドウの [フィールド マップ] で、[編集] をクリックします。 [フィールド プロパティ] ウィンドウの [フィールド] で、[min_zoom] フィールドをクリックします。
  10. [テーブル][NorwayMinorIslands] をクリックします。

    新しいソースの追加ボタン

    選択したレイヤーからソース フィールドを追加することができます。

  11. [アクションとソース フィールド][zoom_level] をクリックします。

    アクションとソース フィールド セクションに追加された新しいソース フィールド

    これで、[min_zoom] フィールドと [zoom_level] フィールドの両方が出力レイヤー内の新しいフィールドに関連付けられます。

  12. [フィールド][ORIG_FID] をクリックします。

    このフィールドは、1 つのテーブルにしか存在しません。 このフィールドは新しいレイヤーでは不要になるため、削除します。

  13. [ORIG_FID][削除] ボタンをクリックします。

    削除ボタン

    [zoom_level] の値は [min_zoom] フィールドにすでに含まれているため、こちらも削除しても構いません。

  14. [zoom_level] フィールドを削除します。

    [(2)] ラベルが付いていない最後のフィールドは [Name] です。 属性テーブルから、小さな島々の多くは名前が記録されているが、[NorwayLand] レイヤーに名前フィールドが存在していないことがわかります。

    NorwayMinorIslands 属性テーブルの名前フィールド

    [Name] フィールドを出力フィールドとして保持します。 ソース フィールドが 1 つだけになっても問題ありません。

    最後のフィールド セクション

  15. [フィールド プロパティ] ウィンドウで、[OK] をクリックします。
  16. [ジオプロセシング] ウィンドウで、[出力へのソース情報の追加] チェックボックスをオフのままにします。

    属性テーブルから、[featurecla] フィールドで [NorwayLand] レイヤーから取得されたすべてのフィーチャの値が [Land] になっており、[NorwayMinorIslands] レイヤーから取得されたすべてのフィーチャの値が [Minor island] になっていることがわかります。 このフィールドでソース レイヤーを確認できるため、ソース情報をさらに追加する必要はありません。

  17. [実行] をクリックします。

    このツールが実行され、[NorwayLand_Merge] という新しいレイヤーが [コンテンツ] ウィンドウに表示されます。

    [ジオプロセシング] ウィンドウの下部に警告が表示されます。

エラーの修正

マージが正常に実行されませんでした。 マップ上で、小さな島々がまだ濃い緑色になっていることがわかります。 これらの島々は、マージ後のレイヤーに含まれていません。

コンテンツ ウィンドウとマップにある NorwayLand_Merge レイヤー

警告の内容に目を通し、何が間違っていたかを確認します。

  1. [ジオプロセシング] ウィンドウの警告で [詳細の表示] をクリックします。

    詳細の表示リンク

    ウィンドウが開き、[入力 OID 10 で失敗しました。値 'Minor island' を出力フィールド featurecla に書き込めませんでした。] という警告メッセージが表示されます。

    警告 001156

    [featurecla] フィールドを調べて、このメッセージが表示された原因を特定します。

  2. メッセージ ウィンドウを閉じます。
  3. [ジオプロセシング] ウィンドウの [フィールド マップ] で、[編集] をクリックします。 [フィールド プロパティ] ウィンドウで、[featurecla (2)] が選択されていることを確認します。

    [プロパティ] で、該当するフィールドの [タイプ] の値が [Text] に設定されており、[長さ] の値が [11] に設定されていることがわかります。

    プロパティ セクション

    これらのプロパティは、最初の入力データセットである [NorwayLand] から取り込まれたものです。 11 文字は、Land という語句を格納するには十分な長さですが、Minor island という語句を格納するには長さが足りません。

  4. [長さ] に「12」と入力します。

    12 文字に設定された長さ

    また、出力データセットでこのフィールドの意味がもっと明確になるように、名前とエイリアスを変更します。

  5. [フィールド名] に「source」と入力します。 [エイリアス] に「Source Layer」と入力します。

    フィールド名とエイリアス

  6. [フィールド プロパティ] ウィンドウで、[OK] をクリックします。
  7. [ジオプロセシング] ウィンドウで [実行] をクリックします。

    マップ上の [NorwayLand_Merge] レイヤーが更新されます。 [出力データセット] の名前を変更していないので、前に作成した名前が上書きされました。 今回は、すべての島が網羅されます。

    コンテンツ ウィンドウとマップにある NorwayLand_Merge レイヤー

  8. [NorwayLand_Merge] レイヤーの属性テーブルを開きます。
  9. テーブルをスクロールして、両方の入力レイヤーから取得されたフィーチャが含まれており、これらのフィールドが正常にマージされていることを確認します。

    NorwayLand_Merge 属性テーブル

  10. 3 つの属性テーブルをすべて閉じます。
  11. [コンテンツ] ウィンドウで [NorwayLand] を右クリックしてから [削除] を選択します。

    レイヤーのショートカット メニューにある削除

  12. [NorwayMinorIslands] レイヤーも削除します。
  13. [クイック アクセス ツールバー][プロジェクトの保存] ボタンをクリックします。

    プロジェクトの保存ボタン

  14. このプロジェクトが以前のバージョンで作成されたというメッセージが表示された場合は、[はい] をクリックします。

2 つのポリゴン レイヤーをマージして新しい 1 つのレイヤーにしました。 フィールド マップを使用して、一致しないフィールドを新しいレイヤー内でマージおよび書式設定する方法を確認しました。

他のチュートリアルについては、チュートリアル ギャラリーをご覧ください。