Skip to contents

Reports the bands documented in each product's readme — what each one measures, its units, its measurement scale, and its valid range — so the variables available for extraction can be browsed without opening a readme or a raster.

Usage

list_variables(theme = NULL, product = NULL, verbose = TRUE, ...)

Arguments

theme

Optional character; theme folder name(s) to keep, e.g. "elevation". Matched case-insensitively.

product

Optional character; product name(s) or catalogue id(s), e.g. "soilgrids_250_v2_ab" or "geoscientificInformation/soilgrids_250_v2_ab". Matched case-insensitively: exactly first, and if nothing matches exactly, as a substring, so a fragment of a long product name is enough.

verbose

Logical; if TRUE (default), print a compact summary and return the table invisibly.

...

Passed to build_catalogue(), e.g. root, refresh, or files.

Value

A data.frame with one row per band: product (the product's catalogue id), name, theme, band, measure, units, scale, valid_range, and description. Classed sciSpatial_variables unless verbose = FALSE.

Details

Bands belong to the product, not to a variant: the data management guide records them once in the product readme, since resampling a layer does not change what its bands measure. A product with several variants therefore contributes one set of rows, not one set per variant.

Products whose readme documents no bands are listed with band NA rather than dropped, so a documentation gap is visible instead of looking like an absent product. check_metadata() reports the same gaps against the required template fields.

See also

list_layers() for the layers themselves, layer_meta() for one layer's full metadata.

Examples

if (FALSE) { # \dontrun{
list_variables()
list_variables(theme = "geoscientificInformation")
list_variables(product = "soilgrids")

# Every band measuring pH, across the catalogue.
v <- list_variables(verbose = FALSE)
v[grepl("pH", v$measure, ignore.case = TRUE), ]
} # }