【R】prism

1. はじめに

prismは、Oregon State PRISM project.にアクセスしてデータを取得するパッケージです。

2. インストール

CRANからインストールできます。

install.packages("prism")

3. つかってみる

まず、ダウンロードしたデータの保存フォルダをしていします。ここでは、prismtmpとしてあります。

library(prism)

prism_set_dl_dir("~/prismtmp")

1981-2010年の30年間のデータを取得するには、get_prism_normals関数を使用します。解像度”4km”か”800m”を指定する必要があります。monで取得する月を選べます。データはzip形式でダウンロードされますが、keepZipパラメータをFALSEにしておくと、ダウンロード後に解凍してくれます。

get_prism_normals(type="tmean", resolution = "4km", mon = 1:6, keepZip = FALSE)

Daily, Monthly, Annualのデータは、get_prism_*関数で取得します。

get_prism_monthlys(type = "tmean", year = 1982:2014, mon = 1, keepZip = FALSE)

どのデータを使えるか確認します。

prism_archive_ls()

もっとピンポイントな調べ方。

prism_archive_subset("tmean", temp_period = "monthly normals", resolution = "4km", mon = 4)

pd_image()関数で簡単にプロットできます。

jmean <- prism_archive_subset(
  "tmean", "monthly normals", mon = 4, resolution = "4km"
)
pd_image(jmean)

leafletと重ねることもできます。

library(leaflet)
library(raster)

rast <- raster(pd_to_file(jmean))

pal <- colorNumeric(
  c("#0000FF", "#FFFF00", "#FF0000"), 
  values(rast),
  na.color = "transparent"
)

leaflet() %>% 
  addTiles(
    urlTemplate = 'http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}'
  ) %>% 
  addRasterImage(rast, colors = pal, opacity=.75) %>% 
  addLegend(pal = pal, values = values(rast), title = "Mean temp Deg C")

4. さいごに

rasterデータとしても柔軟に使えるデータセットで便利です。

Add a Comment

メールアドレスが公開されることはありません。