2020年に行われた国勢調査の集計結果の公表が始まっています。
国勢調査は、ArcGIS Insights を使用することで、手軽にマップやチャートとして可視化をすることができます。
今のうちに、現在公開されている 2015年の国勢調査データを使った分析に慣れておいて、2020年の集計結果の公表に備える、というのはいかがでしょうか?
今回はこのようなレポートを作成してみたいと思います。

ArcGIS Insights とは
今回使用する ArcGIS Insights は空間分析×BI ワークフロー×オープンデータ サイエンスの3つを兼ね備えた分析用ワークベンチです。テーブルのフィールド名をドラッグ & ドロップするだけで様々なチャートやマップを作成することができます。
今回は、ArcGIS Online 版 ArcGIS Insights を使用します。
国勢調査のデータは政府統計の総合窓口 e-Stat (https://www.e-stat.go.jp/) から無償でダウンロードすることができます。
早速ダウンロードしてみましょう!
統計データの取得
https://www.e-stat.go.jp/ にアクセスします。
[地図] をクリックします。

[統計データダウンロード] → [国勢調査] → [2015年]→[小地域(町丁・字等別)] → [年齢(5歳階級、4区分)別、男女別人口] をクリックします。
任意の都道府県 (今回は東京都) の [CSV] をクリックし、ファイルをローカルに保存します。
ローカルに保存した ZIP ファイルを展開します。
データのクレンジング
まずは、統計データを ArcGIS Insights で利用しやすい形にしていきます。
ダウンロードした CSV をExcel で開いてみます。

統計値が含まれる列では、1 行目に連番、2 行目にわかりやすい項目名が記載されているため、項目名を1 行目にもっていくのがおすすめです。そして2 行目を削除します。 (ちなみに連番と項目名の対応表 は PDF 形式で存在します。)
また、国勢調査は一定規模以下の町丁・字等地域については、集計結果の秘匿処理が存在します。秘匿は X で表現されます。また、該当数字がないものは、- で表現されます。これらはデータを数値として扱う場合に邪魔になるので、取り除いておきましょう。
- 1行目を列の名前に、2行目から値となるように変更します。
- X, -, 半角スペースを取ります。
- CSV (UTF-8) として保存します。
完成したものがこちら↓です。

ArcGIS Insights にデータの追加
データの追加
CSV
組織サイトのアプリ ランチャーもしくは、https://insights.arcgis.comにサイン インをして、ArcGIS Insights を起動します。
[ワークブック] タブの [新しいワークブック] をクリックします。
[ページに追加] ウィンドウの [ファイルのアップロード] タブをクリックし、先ほど作成したファイルをウィンドウにドラッグ & ドロップします。
続いて、統計データを結合する地理データを追加します。
結合に利用する国勢調査の地理データは Living Atlasですでに提供されており、ArcGIS Insights ではそのデータをすぐに利用できるため、今回はそちらを利用していきます。 e-Stat で提供されている地理データ (シェープファイル) もちろん利用することができます。その場合は、ダウンロードした ZIP ファイルをアップロードすることで利用可能です。その後の流れは、Living Atlas データを使用する場合と同じです。
ただし、e-Stat で提供されているシェープファイルは文字コードが Shift-jis で作成されているため、UTF-8 に対応している ArcGIS Insights でこちらを使用すると、属性の日本語部分が文字化けしてしまいます。境界データとしての利用上は支障はありませんが、文字化けを解消する場合は、UTF-8 に変換するか、今回ご紹介する Living Atlas データをご利用ください。
Living Atlas
[ページに追加] ウィンドウの [Living Atlas] タブをクリックし、検索ボックスで「国勢調査」と検索します。
「平成27年国勢調査 町丁・字等界」 (作成者: esri_communitymaps) を選択し、「block」のみにチェックを入れます。

[追加] をクリックします。
ワークブック名を「平成27年国勢調査」と変更し、保存します。
この後の作業でも適宜ワークブックを保存することをお勧めします。
追加したデータの確認
データ追加後の画面では、画面左端のデータ ウィンドウに追加したデータが表示されます。
Living Atlas 等組織外のデータは、ワークブックにコピーすることでリレーションシップの作成や解析に使用することができるようになります。
都道府県名によるフィルターを配置
Living Atlas の全国の小地域のデータはそのままではレコード数が多いので、今回はあらかじめ「東京都」でフィルターをかけておきます。
データウィンドウで「Block」をクリックし、フィールド名の一覧を展開します。
「都道府県名」のデータセット フィルターをクリックし、「東京都」のみにチェックを入れ、[適用] をクリックします。

データ ウィンドウで「Block」の [...] → [ワークブックにコピー] をクリックします。
雲アイコンのついている方の「Block」 の [...] → [削除] をクリックします。

データを確認してみましょう。
データ テーブルでフィールドや値を確認
- データ ウィンドウで「Block 1」の [...] → [データ テーブルの表示] をクリックします。
Block1には、「リンクコード」列があります。これは、統計データの「KEY_CODE」列と共通の値です。この2つの列を用いてリレーションシップを作成することで、統計値によるマッピングが可能になります。
リレーションシップの作成
画面上部の [リレーションシップの作成] をクリックします。
リレーションシップの作成 ウィンドウで、Block1→ (csv 名) の順に選択します。
鉛筆アイコンをクリックして以下の設定を行い、[完了] をクリックします。
- リレーションシップ タイプ: [左]
- フィールドの選択: リンクコード、KEY_CODE

「block1 - (csv 名)」テーブル (オレンジ色のアイコン) が作成されます。
これで準備は完了です!
ArcGIS Insights でデータを可視化
市・特別区ごとの人口総数のチャートを作成
- 「block1 - (csv 名)」の以下のフィールドを選択した状態でページにドラッグし、[ツリー マップ] 上で、ドロップします。
カード タイトル部分をクリックし、「人口総数」と入力します。
コンボチャート: 区ごとの男女数のグラフを作成
- 「block1 - (csv名)」の以下のフィールドを選択した状態でページにドラッグし、[コンボ チャート]上で、ドロップします。
- 「市・特別区名」「 男の総数、年齢『不詳』含む」「女の総数、年齢『不詳』含む」
チャートは作成できましたが、より男女での比較がしやすくなるよう以下の調整を行います。

- ライン チャートをカラム チャートに変更
- [レイヤー オプション] → [オプション] タブで [Y 軸の同期] にチェック
- [レイヤー オプション] → [スタイル] タブでシンボル色などを変更
- [レイヤー オプション] → [凡例] タブで [凡例を別ウィンドウに表示] をクリック
- カード タイトルを「人口総数 男女別」に変更
- カード上部の [クロス フィルターの有効化] をクリック

[クロス フィルターの有効化] の設定では、他方のカードで値を選択すると有効化したカードでフィルターがかかるようになるため、このようにチャート上の特定の値にフォーカスをすることができます。

コンボチャート: 区ごとの65歳以上男女数のグラフを作成
- 先ほど作成したコンボ チャート カードを選択します。
- Ctrl + C キー → Ctrl + V キー でコピー & ペーストします。
- カードを選択し、フィールド名部分をクリックし、以下のフィールドに変更します。
- 「 男の総数、年齢『不詳』含む」 → 「男65歳以上」に変更
- 「 女の総数、年齢『不詳』含む」 → 「女65歳以上」に変更

- カード タイトルを「65歳以上人口 男女別」 に変更
町丁字等別 65歳以上人口密度のマップ (コロプレス マップ)を作成
「総数65歳以上」フィールドをページにドラッグし、[マップ] 上でドロップします。
マップ上のレイヤー名の横の [>] をクリックし、[レイヤー オプション] を開きます。

[レイヤー オプション] の [オプション] タブで以下の設定を行います。
シンボル タイプを [数と量 (色)] に変更します。(適宜マウス ホイールをマップ上でスクロールしてマップの表示範囲を変更してください。)
[分類] を展開します。
[総数65歳以上の分割] のドロップダウン リストから「総数、年齢『不詳』含む」 を選択します。
[レイヤー オプション] の [シンボル] タブでカラー パレットやアウトラインの太さを変更します。
[レイヤー オプション] の [凡例] タブで [凡例を別ウィンドウに表示] をクリックします。
カード タイトルを「65歳以上の割合」に変更します。
カード上部の [クロス フィルターの有効化] をクリックします。
任意: [ズーム ツール] → [デフォルトの範囲の設定] でマップの表示範囲を設定できます。

参照テーブル: 値の一覧表の作成
- 以下のフィールドを選択してページにドラッグし、[参照テーブル] 上でドロップします。
- 「CITYNAME」「NAME」「総数」「男65歳以上」「女65歳以上」
- [クロス フィルターの有効化] をオンにします。
- 参照テーブル内のフィールド名横の矢印をクリックすると、昇順・降順に切り替えられます。
- カード上部の [テーブル オプション] では下記の設定ができます。
- カード タイトルを「表」に変更します。

余裕がある方は... 町丁字等別 75歳以上人口密度のマップを作成
- 65歳以上人口密度のマップ カードを選択し、Ctrl+C → Ctrl + V でコピー & ペーストします。
- [レイヤー オプション] の [オプション] タブでシンボル設定を「総数75歳以上」に変更します。
- 「町丁字等別 65歳以上人口密度のマップを作成」の手順を参考に詳細な設定を行います。
- カード上部の [範囲の同期] をクリックすると、マップ同士の表示範囲を同期できます。
結果の共有
定義済みフィルター ウィジェットの追加
画面右上の [ウィジェット] → [定義済みフィルター] をクリックします。

ページに追加されたフィルターの [追加] をクリックします。フィールドの選択で「CITYNAME」を選択→ [値の使用] をクリックします。
ウィジェットの名前を「市区町村を選択」に変更します。

任意: テキストの追加
- 画面右上の [ウィジェット] → [テキストとメディア] をクリックします。
- 任意のテキストを入力します。リンクや画像などの挿入も可能です。
カードの位置の調整
各カードやウィジェットの配置を調整します。
余裕がある方は... ロゴとバナーによるブランディング
画面右上の歯車アイコンをクリックしてロゴやバナー色を設定できます。
余裕がある方は... ページの外観の設定
- 画面右上の [設定] でページの背景色や前景色を設定できます。
- カードの [...] で、カードの枠線や、カードごとの前景色・背景色を設定できます。
- 画面右上の [ベースマップ] でベースマップを変更できます。

ページの共有
- 画面下部の [ページ オプション] (▼ アイコン) → [共有]をクリックします。
- 共有ウィンドウで任意のタイトルを入力します。
- [閲覧者が...] の [イメージ] と [データ] にチェックを入れます。
- 任意の共有範囲を設定し、[共有] をクリックします。
共有したページにアクセス
[共有ページの表示] の [移動] をクリックすると、共有したページにアクセスできます。
共有したページでも、チャートやマップは連動表示を行うことができます。
また、[カードの裏面を表示] をクリックしてみると、統計情報を表示したり、集計結果や画像をエクスポートする機能をご利用いただけます。(共有ウィンドウでエクスポートの有効化・無効化を制御できます。)
まとめ
今回は、
- e-Stat から国勢調査のダウンロード
- ダウンロードしたデータのクレンジング
- 統計データと地理データのリレーションシップの作成
- ArcGIS Insights での可視化
- 解析結果の共有
を行ってみました。
皆さんも、人口をはじめとしたテーブル データを手軽に可視化できる ArcGIS Insights を使用して、対話的な分析を実施してみませんか?
もし ArcGIS Insights を試してみたいという方は、ArcGIS Insights 21日間トライアルをぜひお申し込みください!