KEN_ALL.CSV

RubyCSVモジュールは遅いようなので郵便番号データを読む際に

line.split(',').map {|it| it.delete('"') }

と、手抜きができるかチェック

> sed -e "s/[^,]//g" KEN_ALL.CSV | wc
 121941  121941 1829115
> echo $(( 1829115 % 121941 ))
0
> sed -e "s/[^\"]//g" KEN_ALL.CSV | wc
 121941  121941 2072997
> echo $(( 2072997 % 121941 ))
0

手を抜いても良さそうだ。