Learn R Programming

terra (version 1.8-5)

all.equal: Compare two SpatRasters for equality

Description

Compare two SpatRasters for (near) equality.

First the attributes of the objects are compared. If these are the same, a (perhaps small) sample of the raster cells is compared as well.

The sample size used can be increased with the maxcell argument. You can set it to Inf, but for large rasters your computer may not have sufficient memory. See the examples for a safe way to compare all values.

Usage

# S4 method for SpatRaster,SpatRaster
all.equal(target, current, maxcell=100000, ...)

Value

Either TRUE or a character vector describing the differences between target and current.

Arguments

target

SpatRaster

current

SpatRaster

maxcell

positive integer. The size of the regular sample used to compare cell values

...

additional arguments passed to all.equal.numeric to compare cell values

See Also

identical, compareGeom

Examples

Run this code
x <- sqrt(1:100)
mat <- matrix(x, 10, 10)
r1 <- rast(nrows=10, ncols=10, xmin=0, vals = x)
r2 <- rast(nrows=10, ncols=10, xmin=0, vals = mat)

all.equal(r1, r2)
all.equal(r1, r1*1)
all.equal(rast(r1), rast(r2))

# compare geometries 
compareGeom(r1, r2)

# Compare all cell values for near equality
# as floating point number imprecision can be a problem
m <- minmax(r1 - r2)
all(abs(m) < 1e-7)

# comparison of cell values to create new SpatRaster
e <- r1 == r2

Run the code above in your browser using DataLab