# packages knitr::opts_chunk$set( collapse = TRUE, comment = "" ) library(amadeus)
This vignette demonstrates how to download, process, and calculate covariates from the Climatology Lab's gridMET dataset using amadeus
functions.
Details are provided for each function's parameters and outputs.
The examples utilize daily specific humidity data.
See https://www.climatologylab.org/wget-gridmet.html for full variable names and acronyms.
The messages returned by amadeus
functions have been omitted for brevity.
Start by downloading the netCDF data files with download_data
.
dataset_name = "gridmet"
: gridMET dataset name.variable = "Near-Surface Specific Humidity"
: specific humidity variable name.year = c(2019, 2020)
: years of interest.directory_to_save = dir
: directory to save the downloaded files.acknowledgement = TRUE
: acknowledge that the raw data files are large and may consume lots of local storage.download = TRUE
: download the data files.remove_command = TRUE
: remove the temporary command file used to download the data.hash = TRUE
: generate unique SHA-1 hash for the downloaded files.dir <- tempdir() amadeus::download_data( dataset_name = "gridmet", variable = "Near-Surface Specific Humidity", year = c(2019, 2020), directory_to_save = dir, acknowledgement = TRUE, download = TRUE, remove_command = TRUE, hash = TRUE )
cat('[1] "aa5116525468299d1fc483b108b3e841fc40d7e5"')
Check the downloaded netCDF files.
list.files(dir, recursive = TRUE, pattern = "sph")
cat('[1] "sph/sph_2019.nc" "sph/sph_2020.nc"')
Import and process the downloaded netCDF files with process_covariates
.
covariate = "gridmet"
: gridMET dataset name.variable = "Near-Surface Specific Humidity"
: specific humidity variable name.date = c("2019-12-13", "2022-01-10")
: date range of interest.path = paste0(dir, "/sph")
: directory containing the downloaded files.sph_process <- amadeus::process_covariates( covariate = "gridmet", variable = "Near-Surface Specific Humidity", date = c("2019-12-18", "2020-01-10"), path = file.path(dir, "/sph") )
Check the processed SpatRaster
object.
sph_process
cat('class : SpatRaster dimensions : 585, 1386, 24 (nrow, ncol, nlyr) resolution : 0.04166667, 0.04166667 (x, y) extent : -124.7875, -67.0375, 25.04583, 49.42083 (xmin, xmax, ymin, ymax) coord. ref. : lon/lat WGS 84 (EPSG:4326) sources : sph_2019.nc (14 layers) sph_2020.nc (10 layers) varnames : sph (near-surface specific humidity) sph (near-surface specific humidity) names : sph_20191218, sph_20191219, sph_20191220, sph_20191221, sph_20191222, sph_20191223, ... unit : kg/kg, kg/kg, kg/kg, kg/kg, kg/kg, kg/kg, ... time (days) : 2019-12-18 to 2020-01-10 ')
terra::plot(sph_process[[1]])
{style="display: block; margin-left: auto; margin-right: auto;"}
Calculate covariates for California county boundaries with calculate_covariates
.
County boundaries are accessed with the tigris::counties
function.\insertRef{package_tigris}
covariate = "gridmet"
: gridMET dataset name.from = sph_process
: processed SpatRaster
object.locs = tigris::counties("CA", year = 2019)
: California county boundaries.locs_id = "NAME"
: county name identifier.radius = 0
: size of buffer radius around each county.geom = "sf"
: return covariates as an sf
object.library(tigris) sph_covar <- amadeus::calculate_covariates( covariate = "gridmet", from = sph_process, locs = tigris::counties("CA", year = 2019), locs_id = "NAME", radius = 0, geom = "terra" )
Check the calculated covariates sf
object.
sph_covar
cat('class : SpatVector geometry : polygons dimensions : 1392, 3 (geometries, attributes) extent : -124.482, -114.1312, 32.52883, 42.0095 (xmin, xmax, ymin, ymax) coord. ref. : lon/lat WGS 84 (EPSG:4326) names : NAME time sph_0 type : <chr> <POSIXt> <num> values : Sierra 2019-12-18 0.003101 Sacramento 2019-12-18 0.005791 Santa Barbara 2019-12-18 0.004594 ')
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.