na-mii.com

波江彰彦のウェブサイト

Toggle Menu

  • ホーム
  • プロフィール
  • 研究
  • 教育
  • GIS
  • お問い合わせ

[甲南GIS12]iタウンページの検索結果からジオコーディングで使用する住所リストを作成

Published by na-mii on 2013/5/8

サムネイル用画像

[甲南GIS11]までの流れとはがらっと変わって、iタウンページの検索結果からジオコーディングで使用する(きれいな)住所リストを作成する方法について。あくまでも一案です。もっと良い方法もあるような・・・(あれば教えてください)。

(1) Excelを起動

検索結果を貼り付けるために、あらかじめExcelを立ち上げておく。

(2) iタウンページで検索

ここでは例として、兵庫県神戸市東灘区のパン屋さん(パン店)を検索してみる。検索結果は34件。

iタウンページで検索

iタウンページで検索

(3) 検索結果をコピー

<20ずつ表示>のところを<50ずつ表示>に変更して、できるだけ多くの検索結果を表示。その上で、検索結果の部分、すなわち、1件目の店名から34件目の「★お気に入り登録」マークまでを選択状態にし、コピー。

検索結果をコピー

検索結果をコピー

(4) Excelに形式を選択して貼り付け

Excelの<貼り付け>ボタンの下部(▼のところ)をクリック→<形式を選択して貼り付け>を選択。

形式を選択して貼り付け

形式を選択して貼り付け

<貼り付ける形式>の中の<テキスト>を選択し、<OK>をクリック。

貼り付ける形式

貼り付ける形式

Excelに検索結果が貼り付けられた。

検索結果が貼り付けられた。

検索結果が貼り付けられた。

(5) データの整形 その1

貼り付けられたデータをみると、ほとんどの部分は、

店名
住所
(1行空き)
電話番号
(1行空き)
くちコミする お気に入り登録
(1行空き)
次の店名
・・・

という状態になっていることがわかります。しかし、ところどころ、お店のキャッチフレーズ(?)が入っていたり、Eメールやサイトのアドレスがあったり、あるいは、電話番号がなかったりします。後の一括処理のために、こうした不規則性を取り除き、規則的なデータに整形します。

すべてのお店が、

店名
住所
(1行空き)
電話番号
(1行空き)
くちコミする お気に入り登録
(1行空き)

というかたちになるように、不要な行を削除し、不足している行を追加(空白の行で良い)。また、もしデータの1行目が空いていれば(上の画像では「株式会社田中屋本店」の上が空白になっている)、その空白の行を削除。以下の画像のようなかたちに整形する。

データの整形 その1

データの整形 その1

(6) データの整形 その2

(5)で整形したデータは、店名が1行目、8行目、15行目・・・と7行おきに、また、住所は2行目、9行目、16行目・・・とこれもまた7行おきに入力されていることがわかります。この規則性を利用し、Excelの関数を使って、

店名1 住所1
店名2 住所2
店名3 住所3
・・・

というかたちにデータを整形します。

この方法については、「Excelセル関数 n行おきに抽出したい」(bettamodokiのメモ)を参考にさせていただきました。なお、ここでは関数に関する詳しい説明は省略します。気になる人は、上記ページやExcelのヘルプなどを参照してください。

今のところ、データはすべてA列に入力されているので(セルからはみ出ているのでわかりにくいですが)、B列に店名が、C列に住所が入るようにデータを加工します。

B1セルを選択。そこに、「=INDIRECT(ADDRESS((ROW()-1)*7+1,1))」と入力し、キーボードのEnterを押して確定。ちなみに、「7」の部分が、7行おきにデータを抽出することを指定している。

Excel関数を入力

Excel関数を入力

すると、「株式会社田中屋本店」という値が返される。そのセル(B1セル)を選択し、セルの右下の黒い四角(■)にマウスカーソルを合わせる。カーソルが十字になった状態で、黒い四角をクリックしたまま下方向にドラッグ(今回は40行目あたりまで)。

店名が抽出された。

店名が抽出された。

すると、B列に店名が抽出された。なお、35行目以降が「0」になっているのは、今回の検索結果が34件で、35件目以降のデータがないためである。「0」は不要なデータなので削除しておく。

同様に、C列に住所を抽出する。C1セルを選択し、「=INDIRECT(ADDRESS((ROW()-1)*7+2,1))」と入力し、キーボードのEnterを押して確定。さきほどとは、「7+2」になったところが変わっている。

Excel関数を入力

Excel関数を入力

株式会社田中屋本店の住所が返されるので、店名のときと同様の手順で34件目までの住所を抽出。

(7) 数式を値に変換

B・C列全体を選択してコピー。その状態で、<貼り付け>ボタンの下部(▼のところ)をクリック→<形式を選択して貼り付け>を選択。<貼り付け>の中の<値>を選択し、<OK>をクリック。

(8) 住所の整形 その1

C列全体を選択。Excelの<ホーム>タブ内の右端、<検索と選択>をクリック→<置換>を選択。

置換

置換

<検索と置換>ウィンドウの<検索する文字列>欄に、「(スペース)地図・ナビ」と入力(下の画像参照)。<置換後の文字列>欄には何も入力せず、<すべて置換>をクリック。

文字列の置換

文字列の置換

すると、住所の後ろにくっついていた「(スペース)地図・ナビ」という文字列が一括削除された。それが確認できたら、<検索と置換>ウィンドウを閉じる。

(9) 住所の整形 その2

今回作成したいリストでは、郵便番号は不要です。というわけで、C列の郵便番号を含む住所データから、県名以下の文字列だけをD列に抽出します。

D1セルを選択。そこに、「=MID(C1,14,100)」と入力し、キーボードのEnterを押して確定。なお、関数の意味は、C1セルの文字列の14文字目から100字分抽出するということである。

MID関数を使用

MID関数を使用

すると、C1セルの文字列から、「兵庫県神戸市東灘区・・・」の部分が抽出された。あとは、(6)と同様の手順で34件目までの住所を抽出。

(10) データの仕上げ

不要な列の削除や、データチェック・クリーニングを行い(今回のデータでは、2件のデータを削除し、最終的には32件に)、以下のようなかたちになれば、ジオコーディングで使用するきれいな住所リストが完成。

住所リストが完成

住所リストが完成

作業手順は以上です。ふーっ・・・・・・。

Filed under: GIS, 仕事 and Tagged: Excel, GIS, NA-GIS, 授業, 甲南GIS, 甲南大学
← Previous Next →

Search

最近の記事

  • 本サイトの更新は終了しました
  • 退職・着任のご挨拶と御礼
  • [NA-GIS105]ハンダイ・ジンチリGIS実習用ポータル(2016年度)
  • [NA-GIS104]フィールド計算機を使う
  • [NA-GIS103]プロジェクトの空間参照系を定義(再定義)する
  • [NA-GIS102]シェープファイルの空間参照系を変換
  • [NA-GIS101]新たにシェープファイルを作成する
  • [NA-GIS100]旧版地形図をジオリファレンスする(後編)
  • [NA-GIS99]旧版地形図をジオリファレンスする(前編)
  • [NA-GIS98]シェープファイルの属性データを利用する

Search

ナビゲーション

  • ホーム
  • プロフィール
  • 研究
  • 教育
  • GIS
  • お問い合わせ

最近の記事

  • 本サイトの更新は終了しました
  • 退職・着任のご挨拶と御礼
  • [NA-GIS105]ハンダイ・ジンチリGIS実習用ポータル(2016年度)
  • [NA-GIS104]フィールド計算機を使う
  • [NA-GIS103]プロジェクトの空間参照系を定義(再定義)する
  • [NA-GIS102]シェープファイルの空間参照系を変換
  • [NA-GIS101]新たにシェープファイルを作成する
  • [NA-GIS100]旧版地形図をジオリファレンスする(後編)
  • [NA-GIS99]旧版地形図をジオリファレンスする(前編)
  • [NA-GIS98]シェープファイルの属性データを利用する

Copyright © 2025 na-mii.com and NAMIE AKIHIKO.

Powered by WordPress and Murmur.