カテゴリー
データ

names.io – 徹底的な?姓名データベース

names.io は、世界の多数の姓(surname)と名(first name)を集めたデータベース、と言っているテキストデータで、GitHub で公開されています。

Exhaustive(徹底的な)が示すように、あらゆる国の姓名を収集しているそうで、README にも入手元へのリンクを多数載せていますが、その規模はというと「姓が10万種類、名が16万種類」だそう。あれ?

日本の姓は30万種類ぐらいあるそう。ローマ字表記のこのデータベースでは同じ音の姓はかなり整理されるだろうとは思いますが、それにしても10万種類で「徹底的な」はないかな、と。

ただこのテキストファイル、同じく公開されているスクリプトで各所のデータを持ってきて加工して作成していることから、データの入手元を増やしていけば、本当に網羅的なものになる可能性もあるでしょう。issues には追加すると良さそうな提案が集まってきています。

最初に「すごい」「完全」と打ち出すことで、あえて突っ込みを受けて改善していこうということなのかもしれません。

via Hacker News

カテゴリー
データ

欧米のラウンドアバウト率をオープンデータから求める

ラウンドアバウト、信号を使わずに縦横の交通を通すための仕組み、日本でも2014年から地方中心に導入されて何度もニュースになっているようです。

僕はイギリスの田舎にいた時に会社が借り上げた車で通勤していたため、交差点のほとんどがラウンドアバウトな街で運転していた経験があります。最初は慣れずに怖いと思ったこともありましたが、慣れてくると信号待ちが無くて楽だなという感想を持ってます。

データで仕事をしている、というエリンさん(Erin)がブログで公開したのは、そんなイギリスのラウンドアバントの全てを地図にプロットするという個人プロジェクト。

OpenStreetMap のデータを使ったということですが、このデータ、ラウンドアバウトについてのデータは存在するものの、普通の交差点のデータは含まれていないそうです。そこで、道路データと別の道路データが同じ地点で交わっているところを交差点として抽出する作業を行ってまず交差点の位置を得る必要があったと。

ヨーロッパ(対象がイギリス外にも広がってます)の交差点を抽出するのに、ラップトップPCで2週間掛かったということ。また、アメリカの交差点については、米国勢調査の別のデータTIGER/Line Shapefilesから同様の処理を行ったと。

ヨーロッパから9か国と米国のデータを処理して、ラウンドアバウトと交差点の比を求め、また地図上にラウンドアバウトをプロットした地図ができています。

僅差ですが、フランスが交差点81か所につきラウンドアバウト1か所で、これらの国の中でもっともラウンドアバウト比率が多い、ということです。スペインやイギリスも多い。また、アメリカは636対1と、ヨーロッパに比べてとてもラウンドアバウトが少ないことがわかります。

前記のように求めた交差点は、住宅街の中、家と家を結ぶ小路の分岐もすべて当てはまりそうなので、街と街をつなぐ街道で見ればもっとラウンドアバウトは多いのではないかな、とも自分の少ない運転経験からは思ったりもします。

エリンさんはまた、人口に対するラウンドアバウトの数、という計算も行っており、これで計算したラウンドアバウト率の高い街の上位25位のほとんどはヨーロッパなのですが、1位はアメリカ インディアナ州のカーメル市となったということです。このカーメル市、1990年代から信号交差点をどんどんラウンドアバウトに置き換え続け、今では125か所以上のラウンドアバウトを持つ米国一ラウンドアバウトの多い場所となっているそう。事故も激減してるそうですが、これができるのは交通量がそこまで多くないというのもあるんでしょうね。

ブログ記事を見ていると、欧州と米国で入手できるデータが異なったり、データを使える形に揃えることが大変だったよう。他の国々についてもわかればもっと興味深いでしょうが、なかなか国ごとに整備されたり公開されたりしているデータがまとまっていないとか、見つかりにくいとか、そんな感じなのかもしれません。

カテゴリー
データ

is-vegan 菜食主義者のための食品判定ライブラリ in JavaScript

肉や魚だけでなく、牛乳など直接は命を奪わない食材も忌避する完全菜食主義(ヴィーガン)のためのライブラリが is-
vegan
です。

利用例はこんな感じ。牛乳はダメで、豆乳はOKと。


import * as isVegan from 'is-vegan';

// example for single ingredient
isVegan.isVeganIngredient('soy'); // true
isVegan.isVeganIngredient('milk'); // false

作りとしては src/util/canbevegan.json と nonvegan.json に食材の名前が列挙してあるだけのシンプルなもの。これを訳せば日本語でも使えるかもしれないですね。レシピサイトの材料リストを見て、菜食主義対応かどうかを表示する、なんていう拡張を作ったりできそうです。

食べ物の規制ということだとイスラム教のハラールについても is-haral 的なライブラリが有ったりするのかな、とGitHub を探してみましたが、見つかりませんでした。あちらは単純に食材の種類で決まるわけではないので同じ手は使えないのかもしれませんね。

via Hacker News