rch850 の上澄み

技術的な話題とか、雑談とか。タイトルを上澄みに変えました @ 2020/09/02

県のオープンデータハッカソンに行ってきた

福井県のオープンデータハッカソンに行ってきた。でも話せることがあまりない!!なぜなら……

応募アプリケーションは、未発表であるものに限ります。また、本コンテストの選考結果が発表されるまで、他に発表することはできません。

福井県Webアプリコンテストのこの制約があるから、成果については基本的にオフレコ。かといって書くことが全くないかというとそうでもない。

今回の発表で発表者から多く聞かれた意見が、データの不足だった。パーソントリップのエリアの緯度経度や面積が無いとか、鳥獣捕獲頭数の鳥獣の写真が無いとか。

ではその不足しているデータをどう補うか?

既存のデータに緯度経度やら写真URLやらの行を足す形だと、わかりやすいけど冗長になる。別途データセットを作って、JOIN できるといい。

僕は鳥獣写真を使ったアプリを作ったんだけど、そこでは鳥獣捕獲数を取って、それと自前で用意した鳥獣名と写真のデータをくっつけた。これが地味に面倒だった。

var chouju = [
  {name: "バード", count: 100},
  {name: "シカ", count: 20}
];

var images = {
  {name: "バード", image_url: "http://example.com/bird.jpg"},
  {name: "シカ", image_url: "http://example.com/dear.jpg"}
};

こんなデータを簡単に

var combined = {
  {name: "バード", count: 100, image_url: "http://example.com/bird.jpg"},
  {name: "シカ", count: 20, image_url: "http://example.com/dear.jpg"}
};

って形にできないんですかね。そう、SQL の JOIN みたいに!

このへん、SPARQL だとうまく解決できたりするのかな?

っていう実装面の感想だけで今回のハッカソンの話は終わりにしておきます。とにかく、オープンデータを JOIN したいということです。