MLRC | R Documentation |

Functions for reconstructing (predicting) environmental values from biological assemblages using Maximum Likelihood response Surfaces.

```
MLRC(y, x, check.data=TRUE, lean=FALSE, n.cut=5, verbose=TRUE, ...)
MLRC.fit(y, x, n.cut=2, use.glm=FALSE, max.iter=50, lean=FALSE, verbose=FALSE, ...)
## S3 method for class 'MLRC'
predict(object, newdata=NULL, sse=FALSE, nboot=100,
match.data=TRUE, verbose=TRUE, ...)
## S3 method for class 'MLRC'
crossval(object, cv.method="loo", verbose=TRUE, ngroups=10,
nboot=100, h.cutoff=0, h.dist=NULL, ...)
## S3 method for class 'MLRC'
performance(object, ...)
## S3 method for class 'MLRC'
print(x, ...)
## S3 method for class 'MLRC'
summary(object, full=FALSE, ...)
## S3 method for class 'MLRC'
plot(x, resid=FALSE, xval=FALSE, xlab="", ylab="",
ylim=NULL, xlim=NULL, add.ref=TRUE, add.smooth=FALSE, ...)
## S3 method for class 'MLRC'
residuals(object, cv=FALSE, ...)
## S3 method for class 'MLRC'
coef(object, ...)
## S3 method for class 'MLRC'
fitted(object, ...)
```

`y` |
a data frame or matrix of biological abundance data. |

`x` , `object` |
a vector of environmental values to be modelled or an object of class |

`n.cut` |
cutoff value for number of occurrences. Species with fewer than n.cut occurrences will be excluded from the analysis. |

`use.glm` |
logical to use |

`newdata` |
new biological data to be predicted. |

`max.iter` |
maximum iterations of the logit regression algorithm. |

`check.data` |
logical to perform simple checks on the input data. |

`match.data` |
logical indicate the function will match two species datasets by their column names. You should only set this to |

`lean` |
logical to exclude some output from the resulting models (used when cross-validating to speed calculations). |

`full` |
logical to show head and tail of output in summaries. |

`resid` |
logical to plot residuals instead of fitted values. |

`xval` |
logical to plot cross-validation estimates. |

`xlab` , `ylab` , `xlim` , `ylim` |
additional graphical arguments to |

`add.ref` |
add 1:1 line on plot. |

`add.smooth` |
add loess smooth to plot. |

`cv.method` |
cross-validation method, either "loo", "lgo", "bootstrap" or "h-block". |

`verbose` |
logical to show feedback during cross-validation. |

`nboot` |
number of bootstrap samples. |

`ngroups` |
number of groups in leave-group-out cross-validation, or a vector contain leave-out group menbership. |

`h.cutoff` |
cutoff for h-block cross-validation. Only training samples greater than |

`h.dist` |
distance matrix for use in h-block cross-validation. Usually a matrix of geographical distances between samples. |

`sse` |
logical indicating that sample specific errors should be calculated. |

`cv` |
logical to indicate model or cross-validation residuals. |

`...` |
additional arguments. |

Function `MLRC`

Maximim likelihood reconstruction using response curves.

Function `predict`

predicts values of the environemntal variable for `newdata`

or returns the fitted (predicted) values from the original modern dataset if `newdata`

is `NULL`

. Variables are matched between training and newdata by column name (if `match.data`

is `TRUE`

). Use `compare.datasets`

to assess conformity of two species datasets and identify possible no-analogue samples.

`MLRC`

has methods `fitted`

and `rediduals`

that return the fitted values (estimates) and residuals for the training set, `performance`

, which returns summary performance statistics (see below), `coef`

which returns the species coefficients, and `print`

and `summary`

to summarise the output. `MLRC`

also has a `plot`

method that produces scatter plots of predicted vs observed measurements for the training set.

Function `MLRC`

returns an object of class `MLRC`

with the following named elements:

Function `crossval`

also returns an object of class `MLRC`

and adds the following named elements:

`predicted` |
predicted values of each training set sample under cross-validation. |

`residuals.cv` |
prediction residuals. |

If function `predict`

is called with `newdata=NULL`

it returns the fitted values of the original model, otherwise it returns a list with the following named elements:

`fit` |
predicted values for |

If sample specific errors were requested the list will also include:

`fit.boot` |
mean of the bootstrap estimates of newdata. |

`v1` |
standard error of the bootstrap estimates for each new sample. |

`v2` |
root mean squared error for the training set samples, across all bootstram samples. |

`SEP` |
standard error of prediction, calculated as the square root of v1^2 + v2^2. |

Function `performance`

returns a matrix of performance statistics for the MLRC model. See `performance`

, for a description of the summary.

Steve Juggins

Birks, H.J.B., Line, J.M., Juggins, S., Stevenson, A.C., & ter Braak, C.J.F. (1990) Diatoms and pH reconstruction. *Philosophical Transactions of the Royal Society of London*, **B, 327**, 263-278.

Juggins, S. (1992) Diatoms in the Thames Estuary, England: Ecology, Palaeoecology, and Salinity Transfer Function. *Bibliotheca Diatomologica*, **Band 25**, 216pp.

Oksanen, J., Laara, E., Huttunen, P., & Merilainen, J. (1990) Maximum likelihood prediction of lake acidity based on sedimented diatoms. *Journal of Vegetation Science*, **1**, 49-56.

ter Braak, C.J.F. & van Dam, H. (1989) Inferring pH from diatoms: a comparison of old and new calibration methods. *Hydrobiologia*, **178**, 209-223.

`WA`

, `MAT`

, `performance`

, and `compare.datasets`

for diagnostics.

```
data(IK)
spec <- IK$spec / 100
SumSST <- IK$env$SumSST
core <- IK$core / 100
fit <- MLRC(spec, SumSST)
fit
#predict the core
pred <- predict(fit, core)
#plot predictions - depths are in rownames
depth <- as.numeric(rownames(core))
plot(depth, pred$fit[, 1], type="b")
## Not run:
# this is slow!
# cross-validate model
fit.cv <- crossval(fit, cv.method="loo", verbose=5)
# predictions with sample specific errors
pred <- predict(fit, core, sse=TRUE, nboot=1000, verbose=5)
## End(Not run)
```

Embedding an R snippet on your website

Add the following code to your website.

For more information on customizing the embed code, read Embedding Snippets.