Plot likelihood surface

Share:

Description

Calculate log likelihood over a grid of values of two beta parameters from a fitted secr model and optionally make an approximate contour plot of the log likelihood surface.

Usage

1
2
3
LLsurface.secr(object, betapar = c("g0", "sigma"), xval = NULL,
    yval = NULL, centre = NULL, realscale = TRUE, plot = TRUE,
    plotfitted = TRUE, ncores = 1, ...)

Arguments

object

secr object output from secr.fit

betapar

character vector giving the names of two beta parameters

xval

vector of numeric values for x-dimension of grid

yval

vector of numeric values for y-dimension of grid

centre

vector of central values for all beta parameters

realscale

logical. If TRUE input and output of x and y is on the untransformed (inverse-link) scale.

plot

logical. If TRUE a contour plot is produced

plotfitted

logical. If TRUE the MLE from object is shown on the plot (+)

ncores

integer number of cores available for parallel processing

...

other arguments passed to contour

Details

centre is set by default to the fitted values of the beta parameters in object. This has the effect of holding parameters other than those in betapar at their fitted values.

If xval or yval is not provided then 11 values are set at equal spacing between 0.8 and 1.2 times the values in centre (on the ‘real’ scale if realscale = TRUE and on the ‘beta’ scale otherwise).

Contour plots may be customized by passing graphical parameters through the ... argument.

If ncores > 1 the parallel package is used to create processes on multiple cores (see Parallel for more).

Value

Invisibly returns a matrix of the log likelihood evaluated at each grid point

Note

LLsurface.secr works for named ‘beta’ parameters rather than ‘real’ parameters. The default realscale = TRUE only works for beta parameters that share the name of the real parameter to which they relate i.e. the beta parameter for the base level of the real parameter. This is because link functions are defined for real parameters not beta parameters.

The contours are approximate because they rely on interpolation. See Examples for a more reliable way to compare the likelihood at the MLE with nearby points on the surface.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
## Not run: 
LLsurface.secr(secrdemo.CL, xval = seq(0.16,0.40,0.02),
    yval = 25:35, nlevels = 20)

## now verify MLE
## click on MLE and apparent `peak'
xy <- locator(2)
temp <- LLsurface.secr(secrdemo.CL, xval = xy$x,
     yval = xy$y, plot = FALSE)
temp

## End(Not run)

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.