
Set or get metadata
metags.Rd
You can set arbitrary metadata to (layers of) a SpatRaster using "name=value", or "domain:name=value" tags or a two (name, value) or three column (name, value, domain) matrix or data.frame.
Usage
# S4 method for class 'SpatRaster'
metags(x, layer = NULL, domain = "") <- value
# S4 method for class 'SpatRaster'
metags(x, layer=NULL, name=NULL)
# S4 method for class 'SpatRasterDataset'
metags(x, dataset = NULL) <- value
# S4 method for class 'SpatRasterDataset'
metags(x, dataset=NULL, name=NULL)
Arguments
- x
SpatRaster
- layer
NULL, positive integer or character. If the value is NULL, the tags assigned or returned are for the SpatRaster. Otherwise for the layer number(s) or name(s)
- domain
character. Only used if not specified by
value
. Use "" for the default domain. Depending on the file format used this may the only domain supported when writing files- name
character
- value
character of "name=value" or two-column (name, value) or three-column (name, value, domain) matrix or data.frame
- dataset
NULL, positive integer or character. If the value is NULL, the tags assigned or returned are for the SpatRasterDataset/SpatRasterCollection. Otherwise for the datset number(s) or name(s)
Examples
r <- rast(ncol=5, nrow=5)
m <- cbind(c("one", "two", "three"), c("ABC", "123", "hello"))
metags(r) <- m
metags(r)
#> NULL
metags(r) <- c("another_tag=another_value", "one more=this value")
metags(r)
#> name value domain
#> 1 another_tag another_value
#> 2 one more this value
metags(r) <- cbind("AREA_OR_POINT", "Point", "")
metags(r)
#> name value domain
#> 1 another_tag another_value
#> 2 one more this value
metags(r, name="two")
#> [1] name value domain
#> <0 rows> (or 0-length row.names)
# remove a tag
metags(r) <- cbind("one", "")
metags(r) <- "two="
metags(r)
#> name value domain
#> 1 another_tag another_value
#> 2 one more this value
# remove all tags
metags(r) <- NULL
metags(r)
#> name value domain
#> 1 another_tag another_value
#> 2 one more this value