BODIK Utility(10) 住所の正規化(試作版)

デジタル庁から自治体が公開するオープンデータの定義として「自治体標準データセット(試験公開版)」が発表されました。その中で、住所は正規化して細分化(都道府県、市区町村、町字、番地以下、方書)するようになっていました。

住所の正規化ってどうやるんだろう?と調べてみたら、ジオロニアさんがライブラリを公開してくださっていました。

Geolonia社様の住所正規化ライブラリ「normalize-japanese-addresses」

このライブラリの説明を読むと、

オープンソースの住所正規化ライブラリです。
経産省の IMI コンポーネントツールのジオコーディングの仕組みからインスピレーションをうけて開発しました

とありましたので、このライブラリを使って住所を正規化するツールを作ってみることにしました。

開発においては、Python版がありましたので、そちらを使わせてもらっています。

Python版のnormalize japanese addresses

デジタル庁からも「推奨データセット」から「自治体標準データセット」へ変換するコンバータを提供予定とありますが、とりあえず、今できる範囲で対応してみましたので、ご興味がありましたら、お試しください。

住所正規化(試作版)

このツールを開くと次のような画面が表示されます。

図1

使い方は他のユーティリティと同じです

  1. CSVを指定する方法は2つあります
    • URLを指定する
      1. 例えば、ODCSに登録されているリソースのリンクをコピーし、「ファイルのURLを指定する」に貼り付ける
      2. 「URL」ボタンを押す
    • ローカルのファイルを指定する
      1. 「CSVファイル」ボタンを押す
      2. ローカルのCSVファイルを選択する
  2. 指定したCSVファイルを表形式で表示します
  3. 表のデータ行をクリックすると、選択された行の「住所」を正規化し、分割して表示します
    • 住所を「都道府県」「市区町村」「町字」「番地以下」に分割します
    • 「status」欄には正規化の精度を表示します。通常はこの値が3以上になると成功です。
      • status=1の場合、都道府県しかわからない
      • status=2の場合、市区町村までしかわからない
    • 正規化の精度が低い(statusが1または2)場合、その行の背景を薄い赤にして、確認が必要なことをお知らせします
      • 薄い赤で表示された行の住所の記述をご確認ください
  4. 「ダウンロード」ボタンを押すと、その時点のグリッドの内容をダウンロードします

住所正規化の実行例

1.手元のCSVを開きます。

図2

2.任意の行をクリックすると、その行の「住所」を正規化し、分割します

図3

3.うまく正規化できなかった場合は、背景を薄い赤にして、確認が必要なことをお知らせします。

図4

ひらの