Extract values from an ee$Image
at the
locations of a geometry object. Users can use ee$Geometry$*
,
ee$Feature
, ee$FeatureCollection
, sf or sfc object to filter
spatially. This function mimicking how extract currently works.
ee_extract(
x,
y,
fun = ee$Reducer$mean(),
scale = NULL,
sf = FALSE,
via = "getInfo",
container = "rgee_backup",
lazy = FALSE,
quiet = FALSE,
...
)
ee$Image.
ee$Geometry$*, ee$Feature, ee$FeatureCollection, sfc or sf objects.
ee$Reducer object. Function to summarize the values. The function must take a single numeric value as an argument and return a single value. See details.
A nominal scale in meters of the Image projection to work in. By default 1000.
Logical. Should return an sf object?
Character. Method to export the image. Three method are implemented: "getInfo", "drive", "gcs".
Character. Name of the folder ('drive') or bucket ('gcs')
to be exported into (ignore if via
is not defined as "drive" or
"gcs").
Logical. If TRUE, a
future::sequential
object is created to evaluate the task in the future.
Ignore if via
is set as "getInfo". See details.
Logical. Suppress info message.
ee$Image$reduceRegions additional parameters. See
ee_help(ee$Image$reduceRegions)
for more details.
A data.frame or an sf object depending on the sf argument.
Column names are extracted from band names. Use ee$Image$rename
to
rename the bands of an ee$Image
. See ee_help(ee$Image$rename)
.
The reducer functions that return one value are:
allNonZero: Returns a Reducer that returns 1 if all of its
inputs are non-zero, 0 otherwise.
anyNonZero: Returns a Reducer that returns 1 if any of its
inputs are non-zero, 0 otherwise.
bitwiseAnd: Returns a Reducer that computes the bitwise-and summation of its inputs.
bitwiseOr: Returns a Reducer that computes the bitwise-or summation of its inputs.
count: Returns a Reducer that computes the number of non-null inputs.
first: Returns a Reducer that returns the first of its inputs.
firstNonNull: Returns a Reducer that returns the first of its non-null inputs.
kurtosis: Returns a Reducer that Computes the kurtosis of its inputs.
last: Returns a Reducer that returns the last of its inputs.
lastNonNull: Returns a Reducer that returns the last of its non-null inputs.
max: Creates a reducer that outputs the maximum value of its (first) input. If numInputs is greater than one, also outputs the corresponding values of the additional inputs.
mean: Returns a Reducer that computes the (weighted) arithmetic mean of its inputs.
median: Create a reducer that will compute the median of the inputs. For small numbers of inputs (up to maxRaw) the median will be computed directly; for larger numbers of inputs the median will be derived from a histogram.
min: Creates a reducer that outputs the minimum value of its (first) input. If numInputs is greater than one, also outputs additional inputs.
mode: Create a reducer that will compute the mode of the inputs. For small numbers of inputs (up to maxRaw) the mode will be computed directly; for larger numbers of inputs the mode will be derived from a histogram.
product: Returns a Reducer that computes the product of its inputs.
sampleStdDev: Returns a Reducer that computes the sample standard deviation of its inputs.
sampleVariance: Returns a Reducer that computes the sample variance of its inputs.
stdDev: Returns a Reducer that computes the standard deviation of its inputs.
sum: Returns a Reducer that computes the (weighted) sum of its inputs.
variance: Returns a Reducer that computes the variance of its inputs.
if (FALSE) {
library(rgee)
library(sf)
ee_Initialize(gcs = TRUE, drive = TRUE)
# Define a Image or ImageCollection: Terraclimate
terraclimate <- ee$ImageCollection("IDAHO_EPSCOR/TERRACLIMATE") %>%
ee$ImageCollection$filterDate("2001-01-01", "2002-01-01") %>%
ee$ImageCollection$map(
function(x) {
date <- ee$Date(x$get("system:time_start"))$format('YYYY_MM_dd')
name <- ee$String$cat("Terraclimate_pp_", date)
x$select("pr")$rename(name)
}
)
# Define a geometry
nc <- st_read(
dsn = system.file("shape/nc.shp", package = "sf"),
stringsAsFactors = FALSE,
quiet = TRUE
)
#Extract values - getInfo
ee_nc_rain <- ee_extract(
x = terraclimate,
y = nc["NAME"],
scale = 250,
fun = ee$Reducer$mean(),
sf = TRUE
)
# Extract values - drive (lazy = TRUE)
ee_nc_rain <- ee_extract(
x = terraclimate,
y = nc["NAME"],
scale = 250,
fun = ee$Reducer$mean(),
via = "drive",
lazy = TRUE,
sf = TRUE
)
ee_nc_rain <- ee_nc_rain %>% ee_utils_future_value()
# Extract values - gcs (lazy = FALSE)
ee_nc_rain <- ee_extract(
x = terraclimate,
y = nc["NAME"],
scale = 250,
fun = ee$Reducer$mean(),
via = "gcs",
container = "rgee_dev",
sf = TRUE
)
# Spatial plot
plot(
ee_nc_rain["X200101_Terraclimate_pp_2001_01_01"],
main = "2001 Jan Precipitation - Terraclimate",
reset = FALSE
)
}