エリアの内挿を使用してデータ内のギャップを補完

高齢者の割合の内挿

データセット内の大半のフィーチャの値がわかっている場合は、それらをもとにエリア全体にわたる連続値を予測できます。 この方法で、ポーランドの高齢者の空間分布をマッピングします。

  1. FillGaps プロジェクト パッケージをダウンロードします。
  2. ダウンロードしたファイルをコンピューター上で選択し、ダブルクリックしてプロジェクトを ArcGIS Pro で開きます。 サイン インを求められたら、ライセンスが割り当てられた ArcGIS アカウントを使用してサイン インします。
    注意:

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

    プロジェクトのマップは、ポーランドのポヴィヤトという行政区画 (郡によく似た区画) を表しています。 ポリゴンでは、65 歳以上の人口の割合を色分けして表しています。 しかし、残念ながらデータは不完全です。 高齢者の割合の値が含まれていない郡が 10 個あります。

    高齢者の割合別に郡を色分けしたポーランドのマップ

    この空間データは、ArcGIS Living Atlas of the World にあります。 高齢者の割合の値は、Statistics Poland によるものです (ここに表示されていない値は、このチュートリアルのために意図的に削除したものです)。

    大都市と地方ではパターンが大きく異なるため、多くの場合は、地球統計学を使用して人口統計データをモデル化することは困難です。 ここでは、データの空間的変動は比較的スムーズで、急激な変化はありません。 そのため、このデータは地球統計的手法に適していると考えられます。

  3. リボンの [解析] タブをクリックします。 [ワークフロー] グループで、[地球統計ウィザード] をクリックします。

    リボンの地球統計ウィザード ボタン

    [地球統計ウィザード] ウィンドウが開きます。

  4. [地球統計ウィザード] ウィンドウの [地球統計学的方法][エリア内挿] を選択します。

    地球統計ウィザード ウィンドウのエリア内挿オプション

    ほとんどの内挿方法では、入力としてポイント データが必要ですが、エリアの内挿の場合はポリゴンを使用します。 このチュートリアルでは、ほぼ完全でパズル ピースのように収まるポリゴンを使用します。 また、ポリゴンや、広範囲に広がるか、重なり合うポリゴンを使用することもできます。 たとえば、鳥の観測値を表すデータが、各観測者が網羅した場所のポリゴンに格納されていることがあります。

    注意:

    この地球統計学的手法について詳しくは、「エリアの内挿とは」をご参照ください。

    値は、平均、割合、イベントのいずれかを表すものとして宣言できますが、エリアの内挿ではそれぞれによって値の処理が異なります。 ここでは、人口における特定の年齢以上のパーセンテージをマッピングするため、割合を指定します。

  5. [入力データセット 1][タイプ][レート] を選択します。 [ソース データセット] には [Powiaty_Seniors] を選択します。
  6. [カウント フィールド] には [2017 Senior Population] を選択します。 [母集団フィールド] には [2017 Total Population] を選択します。

    入力データセット 1 のパラメーター

  7. [次へ] をクリックします。

    次のページには、共分散チャートが表示されます。

    デフォルトの共分散チャート

    青の十字は、モデリングされていないデータを表します。 青の線はモデルを表し、エリア全体における高齢者の割合を予測するために使用されます。 モデルのラインが十字に沿い、十字の 90 パーセントが赤色の信頼区間内に収まるまで、モデルのパラメーターを編集します。 今の状態では、そうなっていません。

    ラインが十字に沿っていないばかりか、パスから大きく逸脱している十字が 2 つあります。 理想的なモデルを構築できないこともありますが、可能な限り近づけることはできます。 まず、ラグ サイズを小さくしてみましょう。 そうすることで、青の十字を生成するためにサンプリングするときに、検索するエリアを絞り込むことができます。

  8. [一般プロパティ][ラグ サイズ] に「12000」と入力して、Enter を押します。

    ラグ サイズ パラメーター

    モデルに変化があります。 しかし、十字は信頼区間からさらに離れてしまいました。

    ラグ サイズを 12000 に設定した共分散チャート

    次に、形状を変更してモデルに改良を加えます。 多くの場合は、安定モデルと K-ベッセル モデルで最適な結果を得ることができますが、処理に時間がかかります。

  9. [モデル][安定] を選択します。

    モデル パラメーター

    モデルが更新されます。 青色の十字が赤色の信頼区間にかなり近づきましたが、ほとんどの十字は信頼区間内に収まっていません。

    モデルを安定に設定した共分散チャート

    特に、自然現象ではなく人口統計データを扱っている場合には、最適なモデルを構築することは困難であり、場合によっては不可能なこともあります。 このシナリオでは、信頼区間内に収まっている十字は 1 つしかありませんが、モデルのラインは十字の比較的近くを通っています。 このモデルは完璧ではありませんが、妥協案としては申し分ありません。

  10. [次へ] をクリックします。

    次のページには、プレビュー マップが示されます。

    プレビュー マップ

  11. プレビュー マップのさまざまな場所をクリックしてみましょう。

    マップでクリックした場所の予測値を判断するために使用される隣接ポリゴンが、マップ上でハイライト表示されます。 赤のポリゴンは、緑のポリゴンよりも解析における重みが大きくなります。

  12. [次へ] をクリックします。

    [交差検証] ページが表示されます。 交差検証は、予測サーフェスの精度を評価します。 データセットから 1 つのポリゴンを削除し、残りのデータを使用して、削除したポリゴン内の値を予測します。

    交差検証ページ

    このモデルの [推定] 散布図は、良好とは言えません。 赤の値が、青とグレーのラインの傾向に沿っているのが理想的です。 チャートは、ポイントのランダムな集まりのように見えます。 一方で、[サマリー] タブに記された値は良好です。

    サマリー タブ

    サマリーの数値は、1 に近い必要がある [標準化二乗平均平方根] 以外は、ゼロに近いのが理想的です。 [二乗平均平方根] 値は 0.02 です。これは、高齢者の予測割合と実際の値との差は、平均で 2% であることを意味します。 誤差としては妥当です。 これらの値は、散布図よりもモデルの質を表しています。

  13. [完了] をクリックします。 [方法レポート] ウィンドウで、[OK] をクリックします。

    内挿されたレイヤーがマップに追加されます。

  14. [コンテンツ] ウィンドウで [Powiaty_Seniors] をオフにし、[Powiaty_Seniors outlines] をオンにします。

    太い黒線で縁取りされたエリアは、データが存在しない郡です。

    郡のアウトラインの下に内挿されたサーフェス

内挿からのポリゴンの作成

作成した内挿は連続しており、ポリゴンのアウトラインを無視しています。 地球統計学的手法により人口統計データが滑らかになり、徐々に変化するサーフェスになっています。 このような滑らかな内挿は、既知のデータに正確には一致しませんが、未知の値を予測するのには適しています。

次に、連続した内挿サーフェスをポリゴンに変換します。

  1. リボンの [マップ] タブをクリックします。 [ナビゲーション] グループで、[ブックマーク] をクリックして [Kluczborski] を選択します。

    マップのブックマーク ギャラリーの Kluczborski ブックマーク

    マップに、データが欠損している郡の 1 つであるクルチボルク郡が表示されます。

    マップのクルチボルク郡

    [エリア内挿] レイヤーは地球統計レイヤーです。つまり、マップの場所によって値が少しずつ異なることを意味します。 このように、補完が必要なポリゴンには幅広い予測値があります。 次に、この予測サーフェスを、郡ごとに単一の予測値を持つポリゴン レイヤーに変換します。

  2. リボンの [解析] タブをクリックします。 [ジオプロセシング] グループで、[ツール] をクリックします。

    リボン上のツール ボタン

    [ジオプロセシング] ウィンドウが表示されます。

  3. [ジオプロセシング] ウィンドウの検索バーに「Areal Interpolation Layer」と入力します。 結果のリストから、[エリア内挿レイヤー → ポリゴン] をクリックします。

    検索結果の一覧にあるエリア内挿レイヤー → ポリゴン ツール

  4. [エリア内挿レイヤー → ポリゴン] ツールで、次のパラメーターを入力します。
    • [入力エリア内挿地球統計レイヤー][エリア内挿] を選択します。
    • [入力ポリゴン フィーチャ][Powiaty_Seniors] を選択します。
    • [出力ポリゴン フィーチャクラス] で出力名を [Interpolated_Polygons] に変更します。 アンダースコアを必ず挿入してください。

    エリア内挿レイヤー → ポリゴン ツールのパラメーター

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

    [Interpolated_Polygons] レイヤーがマップに追加されます。

  6. リボンの [マップ] タブをクリックします。 [ナビゲーション] グループで、[全体表示] ボタンをクリックします。

    リボン上の全体表示ボタン

    マップが縮小表示され、データの全範囲が表示されます。

  7. [コンテンツ] ウィンドウで、[Interpolated_Polygons] レイヤーを [Powiaty_Seniors outlines] レイヤーの下までドラッグします。

    コンテンツ ウィンドウの Interpolated_Polygons レイヤー

  8. [Areal Interpolation] レイヤーをオフにします。

    これで、すべてのポリゴンに高齢者の割合が表示されるようになりました。

    内挿されたポリゴンが表示されたマップ

欠損値から予測値への置換

郡ポリゴンのほとんどに実際の値が存在しているため、予測値を使用するのは、欠損値のある 10 個のポリゴンだけです。 これら 10 個のポリゴンを選択し、[フィールド演算] ツールを使用して、これらのポリゴンにのみ値を追加します。

  1. [コンテンツ] ウィンドウで、[Interpolated_Polygons] を右クリックして [属性テーブル] を選択します。

    属性テーブル オプション

    属性テーブルが表示されます。 ここには、[Powiaty_Seniors] レイヤーのすべてのデータに加え、[包含][推定][標準誤差] の 3 つの新しいフィールドが含まれています。

    属性テーブルの包含、推定、標準誤差列

  2. [Percent Seniors] 列のヘッダーをダブルクリックします。

    Percent Seniors 列のヘッダー

    列が並べ替えられます。 これで、すべての空のレコード ([<Null>]) がテーブルの上部に移動します。 これらの空の値を [推定] フィールドのデータに置換します。

  3. 1 つ目のレコードの行番号をクリックして選択します。 Shift キーを押しながら、データが欠損している最後のレコードの行番号 (行 10) をクリックします。

    データが欠損しているレコードがすべて選択されます。

    データが欠損している行

  4. [計算] ボタンをクリックします。

    計算ボタン

    フィールド演算のオプションが表示されます。

  5. [PercentSeniors] が演算対象のフィールドとして選択されていることを確認します。

    PercentSeniors フィールド

  6. [フィールド値を計算する式を入力します] で、[式へのフィールドの追加] ボタンをクリックします。

    式へのフィールドの追加ボタン

  7. フィールドのリストで、[Predicted] をクリックします。

    ボックスに !Predicted! が設定されます。これにより、[推定] フィールドから値が取得され、[Percent Seniors] フィールドに追加されます。 [推定] フィールドの既存の値は、割合ではなく小数として書式設定されています。 これを変換するには、値に 100 を掛けます。

  8. !Predicted! の後に「*100」と入力します。

    推定値を割合に変換する式

  9. [選択済みを計算 (10)] をクリックします。

    選択済みを計算 (10) ボタン

    [Percent Seniors] 列の [<Null>] 値が置換されました。 選択されていない行は変更されません。

    Percent Seniors 値を示す属性テーブル

  10. 属性テーブルの上部の [選択解除] をクリックします。

    選択解除ボタン

    選択が解除されます。

  11. 属性テーブルを閉じます。

マップのシンボル表示

最後に、元のレイヤーに合わせて新しいレイヤーをシンボル表示します。 シンボル パラメーターを 1 つずつ設定するのではなく、[Powiaty_Seniors] レイヤーからインポートします。

  1. [コンテンツ] ウィンドウで、[Powiaty_Seniors outlines] をオフにします。 必要に応じて、[Interpolated_Polygons] をクリックして選択します。
  2. リボンの [フィーチャ レイヤー] タブをクリックします。 [描画] グループで、[インポート] をクリックします。

    リボンのインポート ボタン

    [シンボルのインポート] ウィンドウが開きます。 ウィンドウの上部のメッセージに、保存されていない保留中の編集データがあることが表示されます。 これらの編集内容は属性テーブルで計算した値です。 続行する前に、保存します。

  3. [シンボルのインポート] ウィンドウで、[編集の保存] ボタンをクリックします。

    編集の保存ボタン

    編集内容が保存されます。

  4. [Symbology Layer][Powiaty_Seniors] を選択します。

    シンボルのインポート ウィンドウのシンボル レイヤー パラメーター

  5. [OK] をクリックします。

    [Areal_Interpolation_Polygons] で、初期レイヤーである [Powiaty_Seniors] と同じシンボルが使用され、データの抜けがなくなります。

    高齢者の割合別に郡を色分けし、ギャップがなくなったポーランドのマップ。

  6. [クイック アクセス ツールバー][プロジェクトの保存] ボタンをクリックします。

    クイック アクセス ツールバーのプロジェクトの保存ボタン

    注意:

    このプロジェクトが ArcGIS Pro の以前のバージョンで作成されており、続行するかどうかを確認するメッセージが表示された場合は、[はい] をクリックします。

欠損しているデータを代替値で置換する処理を、補定と呼びます。 多くの場合、値は残りのデータセットの平均値を使用して補定されます。 空間データは、遠く離れた場所にある物よりも近接している物のほうが類似性が高いと推定できるため、多くの場面で利用できます。 このチュートリアルでは、エリアの内挿を使用してポーランド全体で連続するサーフェスを作成し、人口における 65 歳以上の割合をモデリングしました。 次に、そのサーフェスからサンプリングし、データが欠損しているポリゴンの値を予測しました。

なお、一部の値は内挿された値であることを読者に伝えることも忘れないでください。 その方法として、ラベル、リスト、シンボルを使用することができます。 マップをレポートに含める場合は、内挿の方法を明記することもできます。

[欠損値の補完] ツールで、値の内挿に関する同じタスクを実行できます。 データセットによっては、このツールの方が適切な結果を得られます。 それ以外については、地球統計学的手法の方が適しています。 両方の方法を試してみないとわかりませんが、値の空間的な移り変わりが滑らかでない場合は、[欠損値の補完] を使用することをお勧めします。

注意:

必要に応じて、さらに踏み込んだ課題に挑戦したい方は、[ジオプロセシング] ウィンドウで [欠損値の補完] ツールを検索し、そのツールを使用して [Powiaty_Seniors] レイヤーで欠損値を内挿してみましょう。 また、結果を [Powiaty_full_dataset] の実際の値と比較してみましょう。このデータセットには [カタログ] ウィンドウでアクセスできます。

詳細については、「欠損値の補完 (Fill Missing Values) (時空間パターン マイニング)」および記事「欠落したデータの処理に関するベスト プラクティス」をご参照ください。

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