Sets the coordinate reference system (CRS) of a SpatRaster
object using a
specified CRS string, designed for use in data processing pipelines (e.g.,
with %>%
). Wraps terra::crs<-
to assign a valid CRS, such as an EPSG
code.
Examples
load_packages(terra)
# Create a sample SpatRaster, with missing CRS
r <- terra::rast(nrows = 10, ncols = 10, vals = 1:100)
terra::crs(r) <- NULL
print(r)
#> class : SpatRaster
#> size : 10, 10, 1 (nrow, ncol, nlyr)
#> resolution : 36, 18 (x, y)
#> extent : -180, 180, -90, 90 (xmin, xmax, ymin, ymax)
#> coord. ref. :
#> source(s) : memory
#> name : lyr.1
#> min value : 1
#> max value : 100
terra::crs(r, describe = TRUE)$code
#> [1] NA
# Set CRS to EPSG:4326
(r_modified <- set_raster_crs(r, "epsg:4326"))
#> class : SpatRaster
#> size : 10, 10, 1 (nrow, ncol, nlyr)
#> resolution : 36, 18 (x, y)
#> extent : -180, 180, -90, 90 (xmin, xmax, ymin, ymax)
#> coord. ref. : lon/lat WGS 84 (EPSG:4326)
#> source(s) : memory
#> name : lyr.1
#> min value : 1
#> max value : 100
terra::crs(r_modified, describe = TRUE)$code
#> [1] "4326"