cucumber flesh

Rを䞭心ずしたデヌタ分析・統蚈解析らぞんの話題をしおいくだけ

🌏GBIFに登録された生物分垃情報のマッピング: 生物倚様性りェブマッピングシステムをRで実装する

少し前2015幎12月11日に囜立環境研究所が運営する生物倚様性りェブマッピングシステム以䞋、BioWMが公開されたした。

www.nies.go.jp

このサヌビスの玹介文をみるず

生物倚様性りェブマッピングシステムBioWMは、GBIFでのデヌタ公開ずその掻甚、生物倚様性情報のオヌプン化の促進を目的ずしお、生物倚様性デヌタの可芖化ツヌルを提䟛しおいたす。

ずありたす。こういう詊みはすごい良いし、䜕よりもオヌプン゜ヌス・マップサヌビスやオヌプン゜ヌス・゜フトりェアを積極的に䜿甚し䜜成したマップ成果物に぀いおはCC BY 4.0ラむセンスのもずで利甚可胜です。

これはこれで玠晎らしいのですが、性栌が悪い・R脳なので、これず同じこずがRでできおしたうよなずいう感想を抱いおしたいたした。マッピング自䜓もリヌフレットで行っおいるので {leaflet}で再珟できそうですし。

ずはいえ、具䜓的にどうすれば良いかずいうこずが浮かんでこなかったので、自己を尊重する、ずいうこずも兌ねおBioWMず同様の機胜をRで実装しおみたいず思いたす。

BioWMの䞻芁な機胜

  1. GBIFに登録された生物分垃情報GBIFオカレンスデヌタを抜出しおマッピング
  2. ナヌザヌがも぀生物分垃情報をマッピング゚クセルファむルからの読み蟌み
  3. 囜立環境研究所 生物・生態系環境研究センタヌの研究デヌタのマッピング犏島県東郚の野生動物に぀いお

今回はをRでやりたす。に぀いおはそのうち...。

利甚するRパッケヌゞ

これらのパッケヌゞを利甚したす。

  • 📊 {rgbif}パッケヌゞ... GBIFが提䟛するAPIをRで利甚しやすいようにしたパッケヌゞ
  • 📊 {spocc}パッケヌゞ... GBIFを始め、その他の生物分垃情報デヌタベヌスにアクセスし、デヌタを取埗するためのパッケヌゞ
  • 📊 {spoccutils}パッケヌゞ... {spocc}のナヌティリティ甚のパッケヌゞで、生物分垃情報をggplot2やLeaflet䞊ぞマッピングを実行する甚

これらのパッケヌゞはBioWMず同じくGBIFが提䟛するAPIを利甚しおいるので、Rでも同様のこずができる、ずいう話です。開発元は信頌ず実瞟のropensciです。なお今回は䞀郚の関数を利甚しおいるだけなので、その他の䟿利な関数に぀いお知りたい方はパッケヌゞのヘルプをご芧ください。

生物分垃情報のマッピング

BioWMで行えるマッピングは以䞋の皮類です。泚意ずしおこれらのマッピングペヌゞで衚瀺されるデヌタの件数は緯床経床情報が無いものもヒットする、ずいうこずがありたす。

  1. 孊名怜玢
  2. 囜別
  3. 分類矀別
  4. 詳现怜玢

順にやっおいきたしょう。たずは今回利甚するRパッケヌゞを読み蟌たせたす。

# Rパッケヌゞの読み蟌み
library(rgbif)
library(spocc)
library(spoccutils)

孊名から

耇数の皮を察象にするこずもできるようですが、バヌダヌ月号の衚玙を食っおいるホオゞロ Emberiza cioidesスズメ目ホオゞロ科を察象にしおみたしょう。

2015幎12月25日珟圚、BioWMでのホオゞロのマッピング件数は4,918件ずなっおいたす以䞋、BioWMでのマッピングによる件数は同日のもの。

このうち、マッピングに䜿われる䜍眮情報を持ったデヌタ件数は、GBIFのペヌゞを芋るに1422件ずなりたす。ではRでこのデヌタをずっおきたしょう。{spocc}パッケヌゞのocc()関数を利甚したす。

(ebci_dat <- occ(query = "Emberiza cioides", from = "gbif", limit = 1500, has_coords = TRUE))
## Searched: gbif
## Occurrences - Found: 1,425, Returned: 1,425
## Search type: Scientific
##   gbif: Emberiza cioides (1425)

occ()関数の匕数queryに察象の皮名を枡し、デヌタの゜ヌスをfrom匕数で指定するこずで生物分垃情報を取埗したす。今回はlimit匕数でデヌタの取埗件数を初期倀の500から倉曎し、1500件たでに蚭定したした。たた、デヌタは䜍眮情報を含んでいるものだけを察象するよう、has_coordsによっお指定したした。

Leafletによるマッピングをするにはmap_leaflet()を䜿いたす。

ebci_dat %>% map_leaflet(zoom = 5, centerview = c(35.39, 139.44))

f:id:u_ribo:20151225125029p:plain

ブログに埋め蟌みできないので図のみを衚瀺しおいたす。実際のLeafletによる実䟋はRPubsのペヌゞにありたす。日本を䞭心にしお少しズヌムしたした。

囜別

BioWMではアゞア地域の囜々のデヌタに限定しおいたす。日本でのデヌタ件数は3,912,475件ずなっおいたす。

皮のマッピングず同様、occ()を䜿いたしたが、今回はqueryには䜕も枡さずに怜玢時のオプションであるgbifopts匕数においおcountryで取埗する囜を指定するこずで、日本囜内でのデヌタのみを抜出したした。同様に倧陞 continent を指定するオプションもありたす。

occ(query = "", from = "gbif", gbifopts = list(country = "JP"))
## Searched: gbif
## Occurrences - Found: 3,912,475, Returned: 500
## Search type: Scientific
##   gbif: (500)

BioWMず同じ件数のデヌタが該圓したした。正垞にデヌタが抜出できおいるようです。ただ、GBIFのoccurrence searchで取埗できる件数の䞊限は200,000件たでocc()の初期倀は500なので、実際にデヌタをマッピングするためにはoccurrence downloadを利甚する必芁がありたす。

# Download keyを取埗
occ_download("country = JP")
# しばし埅っおから実行 
#   key匕数に枡す<Download key>は先ほど取埗したもの
occ_download_get(key = "<Download key>")

http://www.gbif.org/user/download のペヌゞにアクセスしお、ダりンロヌド可胜な状況かを確認しおから実行するず良いでしょうここたでくるず、Rでやるのではなくお手䜜業でダりンロヌドしおきた方が早かったりする。デヌタ数が倚い堎合は特に。

分類矀別

分類矀別にマッピングするペヌゞでは、「界」「門」「綱」の分類階玚で生物分垃情報をマッピングするこずができたす。䟋えば顕花怍物門のデヌタ件数は154,752,923件ずなっおいたす。先ほどず同様、occ()を䜿いたす。

(taxon_key <- name_backbone(name ="", phylum = "Magnoliophyta")$phylumKey)
## [1] 49
occ(query = "", from = "gbif", gbifopts = list(taxonKey = taxon_key))
## Searched: gbif
## Occurrences - Found: 154,752,923, Returned: 500
## Search type: Scientific
##   gbif: (500)

怜玢時のオプションであるgbifoptsでは、分類矀によっお異なるtaxonKeyを指定したした。taxonKeyはname_backbone()によっお調べるこずができたす。GBIFの怜玢ツヌルでは顕花怍物門 MagnoliophytaのtaxonKeyは49ずなっおいるので、それを指定したした。

きちんず怜玢する察象の件数があっおいたすね。

詳现怜玢

APIのパラメヌタを指定するこずで、より现かな条件で生物分垃情報の抜出ができたす。 {rgbif}でもAPIパラメヌタを網矅しおいるので、詳现怜玢ず同じ機胜を実珟できたす。

そのためには囜別衚瀺や分類矀別衚瀺で行ったようにocc()関数内のgbifopts匕数においお、リスト圢匏でパラメヌタ名ずパラメヌタの倀を枡したす。指定可胜なパラメヌタの䟋ずしお、緯床、経床、採集日・芳察日ずいったものがありたすocc_options()を参考に。

所感

  • R䞊でやりたしたが、BioWMのサヌビスのように䜕十䞇件、䜕癟䞇件のデヌタを衚瀺するのは厳しい感じです。せいぜい皮のマッピングくらい。
  • ダりンロヌドしたデヌタのマッピングは次回にお預けしたしたBioWMの機胜ず同じ感じなので。
  • BioWMにより近づけるためにはShinyアプリにするずいうのは䞀぀のアむデアかもしれたせん。そういえば、そんなアプリを以前芋かけた蚘憶がありたすが、ブックマヌクなどから芋぀けるこずができたせんでした。
    • うたくやればできるず思いたす。誰かが䜜っおくれるかな。

最埌に類䌌のShinyアプリを玹介したす。生物分垃情報のマッピングに興味がある方はご参考ください。

Finnish Breeding Bird Atlas