basic-probes: Some useful probes for partially-observed Markov processes

Description Usage Arguments Details Value Author(s) References See Also

Description

Several simple and configurable probes are provided with in the package. These can be used directly and as templates for custom probes.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
probe.mean(var, trim = 0, transform = identity, na.rm = TRUE)
probe.median(var, na.rm = TRUE)
probe.var(var, transform = identity, na.rm = TRUE)
probe.sd(var, transform = identity, na.rm = TRUE)
probe.marginal(var, ref, order = 3, diff = 1, transform = identity)
probe.nlar(var, lags, powers, transform = identity)
probe.acf(var, lags, type = c("covariance", "correlation"),
          transform = identity)
probe.ccf(vars, lags, type = c("covariance", "correlation"),
          transform = identity)
probe.period(var, kernel.width, transform = identity)
probe.quantile(var, prob, transform = identity)

Arguments

var, vars

character; the name(s) of the observed variable(s).

trim

the fraction of observations to be trimmed (see mean).

transform

transformation to be applied to the data before the probe is computed.

na.rm

if TRUE, remove all NA observations prior to computing the probe.

kernel.width

width of modified Daniell smoothing kernel to be used in power-spectrum computation: see kernel.

prob

a single probability; the quantile to compute: see quantile.

lags

In probe.ccf, a vector of lags between time series. Positive lags correspond to x advanced relative to y; negative lags, to the reverse.

In probe.nlar, a vector of lags present in the nonlinear autoregressive model that will be fit to the actual and simulated data. See Details, below, for a precise description.

powers

the powers of each term (corresponding to lags) in the the nonlinear autoregressive model that will be fit to the actual and simulated data. See Details, below, for a precise description.

type

Compute autocorrelation or autocovariance?

ref

empirical reference distribution. Simulated data will be regressed against the values of ref, sorted and, optionally, differenced. The resulting regression coefficients capture information about the shape of the marginal distribution. A good choice for ref is the data itself.

order

order of polynomial regression.

diff

order of differencing to perform.

...

Additional arguments to be passed through to the probe computation.

Details

Each of these functions is relatively simple. See the source code for a complete understanding of what each does.

probe.mean, probe.median, probe.var, probe.sd

return functions that compute the mean, median, variance, and standard deviation of variable var, respectively.

probe.period

returns a function that estimates the period of the Fourier component of the var series with largest power.

probe.marginal

returns a function that regresses the marginal distribution of variable var against the reference distribution ref. If diff>0, the data and the reference distribution are first differenced diff times and centered. Polynomial regression of order order is used. This probe returns order regression coefficients (the intercept is zero).

probe.nlar

returns a function that fit a nonlinear (polynomial) autoregressive model to the univariate series (variable var). Specifically, a model of the form y[t] = ∑ beta[k] y[t-tau[k]]^p[k]+e[t] will be fit, where tau[k] are the lags and p[k] are the powers. The data are first centered. This function returns the regression coefficients, beta[k].

probe.acf

returns a function that, if type=="covariance", computes the autocovariance of variable var at lags lags; if type=="correlation", computes the autocorrelation of variable var at lags lags.

probe.ccf

returns a function that, if type=="covariance", computes the cross covariance of the two variables named in vars at lags lags; if type=="correlation", computes the cross correlation.

probe.quantile

returns a function that estimates the prob-th quantile of variable var.

Value

A call to any one of these functions returns a probe function, suitable for use in probe or probe.match. That is, the function returned by each of these takes a data array (such as comes from a call to obs) as input and returns a single numerical value.

Author(s)

Daniel C. Reuman (d.reuman at imperial dot ac dot uk)

Aaron A. King (kingaa at umich dot edu)

References

B. E. Kendall, C. J. Briggs, W. M. Murdoch, P. Turchin, S. P. Ellner, E. McCauley, R. M. Nisbet, S. N. Wood Why do populations cycle? A synthesis of statistical and mechanistic modeling approaches, Ecology, 80:1789–1805, 1999.

S. N. Wood Statistical inference for noisy nonlinear ecological dynamic systems, Nature, 466: 1102–1104, 2010.

See Also

pomp


pomp documentation built on May 2, 2019, 4:09 p.m.

Related to basic-probes in pomp...