This generic function applies a reducer function over a data cube, an R array, or other classes if implemented.
Usage
reduce_space(x, ...)
Arguments
Argument
Description
x
object to be reduced
…
further arguments passed to specific implementations
Value
return value and type depend on the class of x
Examples
# create image collection from example Landsat data only # if not already done in other examplesif (!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")reduce_space(raster_cube(L8.col, v) , "median(B02)")
A data cube proxy object
Dimensions:
low high count pixel_size chunk_size
t 2018-01-01 2018-12-31 12 P1M 1
y 4345299 4744931 1 399632 1
x 388941.2 766552.4 1 377611.2 1
Bands:
name offset scale nodata unit
1 B02_median 0 1 NaN
d <-c(4,16,32,32)x <-array(rnorm(prod(d)), d)y <-reduce_space(x, function(v) {apply(v, 1, mean)})
# reduce_spaceReduce multidimensional data over space```{r include=FALSE}library(gdalcubes)```## DescriptionThis generic function applies a reducer function over a data cube, an R array, or other classes if implemented.## Usage```rreduce_space(x, ...)```## Arguments| Argument | Description ||:------------|:----------------------------------|| x | object to be reduced || ... | further arguments passed to specific implementations |## Valuereturn value and type depend on the class of x## Examples```{r}# create image collection from example Landsat data only # if not already done in other examplesif (!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")reduce_space(raster_cube(L8.col, v) , "median(B02)") d <-c(4,16,32,32)x <-array(rnorm(prod(d)), d)y <-reduce_space(x, function(v) {apply(v, 1, mean)})```## See Also[`reduce_space.cube`](reduce_space.cube.Rmd)[`reduce_space.array`](reduce_space.array.Rmd)