本物の KEN_ALL.csv の処理が簡単に出来る Parse::JapanesePostalCode をリリースした 空前の KEN_ALL.csv ブームが凄かったのが記憶に新しいばかりですが、この郵政さんが公開している郵便番号ファイルをカジュアルにパース出来るモジュールを作りました。 https://metacpan.org/release/Parse-JapanesePostalCode https://github.com/yappo/p5-Parse-JapanesePostalCode 使い方はとても簡単で use Parse::JapanesePostalCode; my $parser = Parse::JapanesePostalCode->new( file => 'KEN_ALL.csv' ); while (my $obj = $parser->fetch_ob
郵便番号と住所の変換システムを扱うエンジニアの間で悪名高かったKEN_ALL.CSVだが、2023年6月更新分より、文字コードがUTF-8に、フリガナが全角カタカナになり、町域名が長いときも複数レコードに分割されなくなったファイルが新たに追加された模様。従来通りの書式のファイルもダウンロードできる。今後は町域名に含まれている自然言語の注釈(「その他」「※番地」「以下に記載のない場合」など)をフラグに変換する予定もあるようだ(郵便番号データダウンロード)。
はじめに 郵便番号と住所の割当についての注意点 郵便番号データのカラム定義 複数行に分割されるレコード 町域名の編集 "以下に掲載がない場合" "・・の次に番地がくる場合" "・・一円" カンマ区切りされた町域名 地割 町域名がカッコ付きで補足されるパターン (全域),(丁目)(各町)(番地)(無番地)(その他) (○○屋敷) ビルの記載 (地階・階層不明)(X階) ・・を除く) ・・を含む) ・・その他) ・・以下) ・・以上) ・・以内) ・・以降) ・・以外) ・・」以外 ・・番地以上 カッコの取り扱い JPostal はじめに 郵便番号の入力に応じて、都道府県や市区町村を入力補完したい、というユースケースは良くあります。 日本郵便の公開する郵便番号データ ken_all.csv は、このようなユースケースのための辞書データ候補に挙げることができます。 しかし郵便番号データ ken_
この記事は Vim Advent Calendar 2020 25日目の記事です。 はじめに 年末ですね。年賀状ですね。インターネットが普及した現代、若い世代の人達においては年賀状を交わす事は少なくなってしまったかもしれません。しかし田舎育ちの僕やある程度年配の方々の世界線では年賀状は未だ変わらず有効なコミュニケーション手段として採用されており「アイツん家の子、大きくなったな」「アイツ随分老けたな」といった思い出回帰の方法としても使われています。 さて皆さんは年賀状をどの様に作っておられますか?手書きですか?それとも「筆○2020」等といった年賀状作成専用ソフトをお使いだったりしますか?僕は毎年 LibreOffice の宛名書き印刷を使っています。 LibreOfficeで宛名印刷(縦書き/連名): ひろろろぐ LibreOffice で差し込み印刷する記事は沢山あるのですが、連名がちゃ
はじめに地雷を撤去しておきましょう 結果論から行くと use ZIPDB select code, count(code) as count from dbo.zipcode_master group by code having count(code) > 1 order by count(code) desc みたいなクエリを実行してみたら、重複レコードがある郵便番号が1525件も居やがります。orz なのでまちがっても、 郵便番号をPrimary Keyにしてはいけません! 郵便番号マスタテーブルをつくっておく こんなクエリを実行すれば良いかと。 USE [ZIPDB] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[zipcode_master]( [code] [nchar](7) C
KEN_ALL.csv はだめだとよく言われます。では何がだめなのでしょうか。 Blogや Twitterなどでよく語られているので、その内容を紹介してみたいと思います。 Blog 「ぐるぐる〜 」 まず、かなり網羅的にまとまっていたのが、下記の ブログ「ぐるぐる〜 」のエントリです。 bleis-tift.hatenablog.com 項目としては、下記のようなものが上げられています。あるあるですね… 単一レコードの複数行分割 「以下に記載がない場合」、「次のビルを除く」を含むレコード 「〜」で範囲を示すレコード 「〜」や「以上」、「以下」を含むレコード 「以外」「を除く」を含むレコード 「その他」を含むレコード 「全域」を含むレコード 「(丁目)」、「(郡)」、「(番地)」などを含むレコード 「を含む」を含むレコード 「地階・階層不明」を含むレコード 複雑な、としか言い表せないレコード
KEN_ALL.csv はだめだとよく言われます。では何がだめなのでしょうか。 Blogや Twitterなどでよく語られているので、その内容を紹介してみたいと思います。 Blog 「ぐるぐる〜 」 まず、かなり網羅的にまとまっていたのが、下記の ブログ「ぐるぐる〜 」のエントリです。 bleis-tift.hatenablog.com 項目としては、下記のようなものが上げられています。あるあるですね… 単一レコードの複数行分割 「以下に記載がない場合」、「次のビルを除く」を含むレコード 「〜」で範囲を示すレコード 「〜」や「以上」、「以下」を含むレコード 「以外」「を除く」を含むレコード 「その他」を含むレコード 「全域」を含むレコード 「(丁目)」、「(郡)」、「(番地)」などを含むレコード 「を含む」を含むレコード 「地階・階層不明」を含むレコード 複雑な、としか言い表せないレコード
[browsershot url=”http://www.post.japanpost.jp/zipcode/download.html” width=”400″ ] 日本郵便はKEN_ALL.CSVという名前で住所と郵便番号のデータを配布している だけど、なにか2段にわたるデータがあったりして使いづらいと評判↓ 「全角となっている町域名の文字数が38文字を超える場合、また、半角カタカナとなっている町域名のフリガナが76文字を越える場合には、複数レコードに分割しています。」 これを成形するモジュールがリリースされていたのでさっそく使ってみた 参照 本物の KEN_ALL.csv の処理が簡単に出来る Parse::JapanesePostalCode をリリースした github.com/yappo/p5-Parse-JapanesePostalCode 環境 ubuntu 11.04 デ
SQL Developerのインポート機能を使用してファイルをテーブルにインポートする場合、その方法をいくつかの選択肢の中から選ぶことが出来る。どれも最終的にはテーブルが作られて*1、そのテーブルにSELECT文などのSQLでアクセス可能になる。ただし、どの方法も違いがあるので、インポートの手順と違いなどを書いていきたい。 環境 Oracle Database Express Edition 11g Release 2をWindows上で動作 Oracle SQL Developer 3.2.20.29 共通な手順 新しいテーブルを作ってそこにデータを入れる場合、下記画像のように「表(フィルタ対象)」のところで右クリック -> データのインポートを選ぶ。 逆に、既存のテーブルにインポートしたい場合は、そのテーブルにフォーカス当たっている状態で右クリック -> データのインポートを選ぶ。 フ
なんかエラーが起きてるなー、と思ったら lzh 形式での配布が終了していたようです。 時の流れを思わずにはいられません。 <お知らせ> 郵便番号データダウンロードにおいて提供しているlzh形式ファイルにつきましては、データ配信を終了いたしました。 引き続きご利用の際は、お手数ですがzip形式ファイルをダウンロードしていただけますようお願いします。 平成27年2月27日更新 http://www.post.japanpost.jp/zipcode/dl/kogaki-zip.html ken_all.zip は引き続き配布されているのでそちらを使いましょう。 というか 2015 年ですし embulk とかで何とかしていけたらいいですね。
「やじうまの杜」では、ニュース・レビューにこだわらない幅広い話題をお伝えします。 【この記事に関する別の画像を見る】 「KEN_ALL.CSV」として知られる日本郵便の郵便番号データが、2023年6月の更新から改善されたそうで、界隈が歓喜の声に包まれています。 新しいデータファイル「utf_all.csv」の改善ポイントは、以下の通り。 ・文字コードが「Shift_JIS」から「UTF-8」に ・読み仮名データが半角カタカナから全角カタカナに ・複数レコードへの分割は廃止。従来は全角町域名の文字数が38文字を超える場合、半角カタカナ町域名のフリガナが76文字を超える場合に複数のレコードに分割されていた 「ぇ、古いのはどうしたの? システム更新しなきゃいけないの?」と思った方はご安心を。従来形式のデータも引き続き利用可能です。 「utf_all.csv」に都道府県別のデータはなく、ファイルサ
KEN_ALL.CSVデータの概要www.post.japanpost.jp/zipcode/dl/readme.html 郵便番号データファイルの形式等全角となっている町域部分の文字数が38文字を越える場合、また半角となっているフリガナ部分の文字数が76文字を越える場合は、複数レコードに分割しています。この郵便番号データファイルでは、以下の順に配列しています。 全国地方公共団体コード(JIS X0401、X0402)……… 半角数字(旧)郵便番号(5桁)……………………………………… 半角数字郵便番号(7桁)……………………………………… 半角数字都道府県名 ………… 半角カタカナ(コード順に掲載) (注1)市区町村名 ………… 半角カタカナ(コード順に掲載) (注1)町域名 ……………… 半角カタカナ(五十音順に掲載) (注1)都道府県名 ………… 漢字(コード順に掲載) (注1,2)
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く