reduce_space.cube | R Documentation |
Create a proxy data cube, which applies one or more reducer functions to selected bands over spatial slices of a data cube
## S3 method for class 'cube'
reduce_space(
x,
expr,
...,
FUN,
names = NULL,
load_pkgs = FALSE,
load_env = FALSE
)
x |
source data cube |
expr |
either a single string, or a vector of strings defining which reducers will be applied over which bands of the input cube |
... |
optional additional expressions (if |
FUN |
a user-defined R function applied over pixel time series (see Details) |
names |
character vector; names of the output bands, if FUN is provided, the length of names is used as the expected number of output bands |
load_pkgs |
logical or character; if TRUE, all currently attached packages will be attached automatically before executing FUN in spawned R processes, specific packages can alternatively be provided as a character vector. |
load_env |
logical or environment; if TRUE, the current global environment will be restored automatically before executing FUN in spawned R processes, can be set to a custom environment. |
Notice that expressions have a very simple format: the reducer is followed by the name of a band in parentheses. You cannot add more complex functions or arguments.
Possible reducers currently include "min", "max", "sum", "prod", "count", "mean", "median", "var", and "sd".
For more details and examples on how to write user-defined functions, please refer to the gdalcubes website at https://gdalcubes.github.io/source/concepts/udfs.html.
proxy data cube object
Implemented reducers will ignore any NAN values (as na.rm=TRUE does).
This function returns a proxy object, i.e., it will not start any computations besides deriving the shape of the result.
# create image collection from example Landsat data only
# if not already done in other examples
if (!file.exists(file.path(tempdir(), "L8.db"))) {
L8_files <- list.files(system.file("L8NY18", package = "gdalcubes"),
".TIF", recursive = TRUE, full.names = TRUE)
create_image_collection(L8_files, "L8_L1TP", file.path(tempdir(), "L8.db"), quiet = TRUE)
}
L8.col = image_collection(file.path(tempdir(), "L8.db"))
v = cube_view(extent=list(left=388941.2, right=766552.4,
bottom=4345299, top=4744931, t0="2018-01", t1="2018-12"),
srs="EPSG:32618", nx = 497, ny=526, dt="P1M")
L8.cube = raster_cube(L8.col, v)
L8.b02 = select_bands(L8.cube, c("B02"))
L8.b02.median = reduce_space(L8.b02, "median(B02)")
L8.b02.median
plot(L8.b02.median)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.