#はじめに
授業で、Linked Open Dataについての課題があり、DBpediaを使えばスクレイピングなどしなくてもそこそこのデータを持ってこれるのでは、とのことで、来たる有馬記念に向けて、過去の有馬記念の勝ち馬の毛色を調べて見ました。
#DBpediaとは
Wikipediaの情報をRDFという、コンピュータが識別しやすい形で抽出するプロジェクトのこと。
例
夏目漱石を例に、DBpediaをみてみると 夏目漱石 -dbpedia
このように、
Property | value |
---|---|
prop-ja:birthDate | --02-09 |
dbpedia-owl:birthPlace | dbpedia-ja:武蔵国 |
出生地、誕生日などが扱いやすいように抽出されています。 |
さて、これを使って、過去の有馬記念の勝ち馬の毛色を調べて見ました。
#投げたクエリー
select distinct ?color_name (count(?color_name) AS ?color) where {
{
?name prop-ja:wikiPageUsesTemplate template-ja:有馬記念勝ち馬.
}
?name rdfs:label ?label ;
prop-ja:色 ?color_name.
} ORDER BY DESC(?color)
##結果
なるほど、鹿毛が多い...っと、となるのですが、そもそも競走馬の毛色は何色が多いの?鹿毛が多いのでは?と思って調べて見ました。
select distinct ?color_name (count(?color_name) AS ?color) where {
{
?name dbpedia-owl:wikiPageWikiLink category-ja:日本生産の競走馬.
} union {
?name dbpedia-owl:wikiPageWikiLink category-ja:日本調教の競走馬.
}
?name rdfs:label ?label ;
prop-ja:色 ?color_name.
} ORDER BY DESC(?color)
color_name | color |
---|---|
http://ja.dbpedia.org/resource/鹿毛 | 1575 |
http://ja.dbpedia.org/resource/栗毛 | 717 |
http://ja.dbpedia.org/resource/黒鹿毛 | 631 |
http://ja.dbpedia.org/resource/芦毛 | 185 |
http://ja.dbpedia.org/resource/青鹿毛 | 132 |
http://ja.dbpedia.org/resource/青毛 | 58 |
http://ja.dbpedia.org/resource/栃栗毛 | 37 |
http://ja.dbpedia.org/resource/白毛 | 14 |
http://ja.dbpedia.org/resource/馬の毛色 | 6 |
"鹿毛"@ja | 2 |
"不明"@ja | 1 |
"赤毛(鹿毛)"@ja | 1 |
はい、推測の通り、そもそも鹿毛が多いようでした。
MySQLでこうやりたいけど、SPARQLだとどうやるの...となってちょっとイライラしてしまいますが、スクレイピングなどしなくても興味のあるデータがさらっととってこれるので割と面白いのでは、と思いました