【R】prism
2021年4月20日
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データとしても柔軟に使えるデータセットで便利です。