grid.predict {RSAGA} | R Documentation |
Helper function for applying predict methods to stacks of grids.
Description
This function can be used to apply the predict method of hopefully any fitted predictive model pixel by pixel to a stack of grids representing the explanatory variables. It is intended to be called primarily by multi.local.function()
or multi.focal.function()
.
Usage
grid.predict(
fit,
predfun,
trafo,
control.predict,
predict.column,
trace = 0,
location,
...
)
Arguments
fit |
a model object for which prediction is desired |
predfun |
optional prediction function; if missing, the |
trafo |
an optional |
control.predict |
an optional list of arguments to be passed on to |
predict.column |
optional character string: Some predict methods (e.g. |
trace |
integer >=0: positive values give more (=2) or less (=1) information on predictor variables and predictions |
location |
optional location data received from |
... |
these arguments are provided by the calling function, usually |
Details
grid.predict
is a simple wrapper function. First it binds the arguments in \dots
together in a data.frame
with the raw predictor variables that have been read from their grids by the caller, multi.local.function()
(or multi.focal.function()
). Then it calls the optional trafo
function to transform or combine predictor variables (e.g. perform log transformations, ratioing, arithmetic operations such as calculating the NDVI). Finally the predfun
(or, typically, the default predict()
method of fit
) is called, handing over the fit
, the predictor data.frame
, and the optional control.predict
arguments.
Value
grid.predict
returns the result of the call to predfun
or the default predict()
method.
Note
Though grid.predict
can in principle deal with predict
methods returning factor variables, its usual caller multi.local.function()
/ multi.focal.function()
cannot; classification models should be dealt with by setting a type="prob"
(for rpart
) or type="response"
(for logistic regression and logistic additive model) argument, for example (see second Example below).
Author(s)
Alexander Brenning
References
Brenning, A. (2008): Statistical geocomputing combining R and SAGA: The example of landslide susceptibility analysis with generalized additive models. In: J. Boehner, T. Blaschke, L. Montanarella (eds.), SAGA - Seconds Out (= Hamburger Beitraege zur Physischen Geographie und Landschaftsoekologie, 19), 23-32.
See Also
focal.function()
, multi.local.function()
, multi.focal.function()
Examples
## Not run:
# Assume that d is a data.frame with point observations
# of a numerical response variable y and predictor variables
# a, b, and c.
# Fit a generalized additive model to y,a,b,c.
# We want to model b and c as nonlinear terms:
require(gam)
fit <- gam(y ~ a + s(b) + s(c), data = d)
multi.local.function(in.grids = c("a", "b", "c"),
out.varnames = "pred",
fun = grid.predict, fit = fit )
# Note that the 'grid.predict' uses by default the
# predict method of 'fit'.
# Model predictions are written to a file named pred.asc
## End(Not run)
## Not run:
# A fake example of a logistic additive model:
require(gam)
fit <- gam(cl ~ a + s(b) + s(c), data = d, family = binomial)
multi.local.function(in.grids = c("a", "b", "c"),
out.varnames = "pred",
fun = grid.predict, fit = fit,
control.predict = list(type = "response") )
# 'control.predict' is passed on to 'grid.predict', which
# dumps its contents into the arguments for 'fit''s
# 'predict' method.
# Model predictions are written to a file named pred.asc
## End(Not run)