estatの境界データと年齢別男女別人口データの結合方法

650 views
Skip to first unread message

hiu....@gmail.com

unread,
Oct 30, 2017, 6:08:32 AM10/30/17
to QGIS初心者質問グループ
estatから入手した世界測地系平面直角座標系のShape形式の境界データに、同じくestatで入手できる年齢別、男女別人口のデータを結合させたいのですが方法が分かりません
どうすればよろしいでしょうか

福岡

unread,
Oct 30, 2017, 6:40:21 AM10/30/17
to QGIS初心者質問グループ
丁寧に解説しているサイトがありましたのでご覧ください。

QGIS入門 10.shapeファイルと他のデータの結合

hiu....@gmail.com

unread,
Oct 30, 2017, 11:32:34 PM10/30/17
to QGIS初心者質問グループ
教えてくださったURLなども参考にしてるのですがバージョンが違うせいか上手く操作できません
結合は出来るのですが後から追加したデータがNULLとなってしまいます…
2.18.4で操作してます

福岡

unread,
Oct 31, 2017, 4:22:51 AM10/31/17
to QGIS初心者質問グループ
ポイントは連結するためにキーとなる共通のフィールドをみつけて、設定してやることだと思います。
私の地元、秋田市の小地域データで試しにやってみました。

まずShapeファイルの読み込みは問題ないと思います。
次に連結するデータ(テキストファイル)の読み込みです。デリミテッドテキストレイヤの追加では次の様な設定で読み込みます。


読み込んだらShapeファイルとテキストファイルの属性テーブルを確認します。
Shapeファイルの属性テーブルです。


テキストファイルの属性テーブルです。


キーとなる共通のフィールド名は、両方とも「KEY_CODE」となっているのが確認できました。
Shapeファイルでは最後尾のフィールド、テキストファイルでは最初のフィールドが「KEY_CODE」となっていて、同じ住所地に同じコードが振られていました。
それでは連結してみましょう。連結時の設定は次のようになると思います。


連結できました。


hiu....@gmail.com

unread,
Oct 31, 2017, 6:33:37 AM10/31/17
to QGIS初心者質問グループ
お教えいただいている通りにやってみているのですが上手く行きません
データの中身を見ると街区データと連結したいテキストファイルとでKEY_CODEの順番やデータ全体の行数が違うのが確認できるのですがこれを合わせる必要があるのでしょうか?

福岡

unread,
Oct 31, 2017, 7:18:18 AM10/31/17
to QGIS初心者質問グループ
順番や行数は揃える必要は無いと思います。

それでは私のダウンロードしたデータで1つずつ確認していきますね?
念のためダウンロードから確認していきます。

「統計表各種データダウンロードへ」ボタンをクリック

データがリンクされているので、ここからダウンロードしました。おそらくここまでは問題無いかと思います。

ここから確認させてください。

ダウンロードしたデータをQGISに読み込ませましたものを添付します。結合はまだしていません。

添付ファイルをダウンロードしてから解凍して、フォルダ内にあるTrial.qgisというファイルをダブルクリックしてください。

私の自宅のQGISは2.14なので、古いファイルというメッセージが出ると思いますが無視して構いません。


これを今までと同じ手順で結合できるか試してみてください。

結合できるのなら、ファイルの読み込みに問題があると思います。結合できないのなら、結合させる手順に問題があると思います。


1ステップずつの確認になって申し訳ありませんが、どこに問題があるのか切り分けさせてください。m(__)m


trial.zip

hiu....@gmail.com

unread,
Oct 31, 2017, 8:41:23 AM10/31/17
to QGIS初心者質問グループ
教えていただいたデータを使ったら上手く行きました
使用しているデータに問題があるのでしょうか…

福岡

unread,
Oct 31, 2017, 8:55:16 AM10/31/17
to QGIS初心者質問グループ
添付したデータを結合できたということは、データに問題があるかデータの取り込みに問題があったのだと思います。

最初にデータの取り込みに問題があったかを確認させてください。
さきほど添付したデータをご自分のやり方でQGISに取り込んでから結合できるか試してみていただけませんでしょうか?
「A002005212015XYSWC05201」フォルダにShapeファイル、「tblT000849C05201」フォルダに結合させるテキストファイルが入っています。

hiu....@gmail.com

unread,
Oct 31, 2017, 11:03:02 AM10/31/17
to QGIS初心者質問グループ
データを取り込む段階から自分でやってみましたが上手く行きました
その後青森県青森市も試してみましたが結合できました
北海道(今回データが欲しい地域)の留萌市で試した所やはりNULLとなってしまいました
北海道を対象にしてる事が原因なのでしょうか?

福岡

unread,
Oct 31, 2017, 11:46:04 AM10/31/17
to QGIS初心者質問グループ
なるほど。

原因は良く分かりませんが、QGISで取り込んだテキストデータの「KEY_CODE」の頭の「0」が削れているみたいですね。
テキストエディタで元データをみると確かに「0」は付いているので、取り込みで何らかの不具合が生じているみたいです。

そこで姑息ですが、Shapeファイルの一番後ろに「0」を削った「KEY_CODE2」というのを追加したファイルを作ってみました。
方法としては、フィールド計算機で単に整数値のフィールドに値を取り込んだだけです。

このような処理をしたShapeファイルを添付します。ターゲットフィールドを「KEY_CODE2」にすれば結合できるはずです。

New_Data.zip

東 雲

unread,
Oct 31, 2017, 12:13:57 PM10/31/17
to QGIS初心者質問グループ
横から失礼します。
CSVTファイルを付けるという手もあると思います。
参考
http://d.hatena.ne.jp/Bravo-Astro/touch/20120310/1331355187

hiu....@gmail.com

unread,
Oct 31, 2017, 12:37:46 PM10/31/17
to QGIS初心者質問グループ
添付ファイルで試した所上手く行きました
説明してくださった通りKEY_CODEが文字化してるのが原因だったようです
度々の回答ありがとうございました

hiu....@gmail.com

unread,
Oct 31, 2017, 12:38:56 PM10/31/17
to QGIS初心者質問グループ
東 雲様もありがとうございます
そちらの方法も試してみます
Reply all
Reply to author
Forward
0 new messages