adehabitat (version 1.8.20)

predict.enfa: Habitat Suitability Maps Built from the ENFA

Description

predict.enfa computes habitat suitability maps using the Ecological-Niche Factor Analysis and the Mahalanobis distances method.

Usage

# S3 method for enfa
predict(object, index, attr, nf, …)

Arguments

object

an object of class enfa

index

an integer vector giving the position of the rows of tab in the initial object of class kasc.

attr

an object of class kasc or mapattr.

nf

the number of axes of specialization kept for the predictions. By default, all axes kept in object are used

further arguments passed to or from other methods

Value

Returns a raster map of class kasc.

Details

The predictions are based on the position of the niche defined by the ENFA within the multidimensional space of environmental variables. The ENFA produces row coordinates for each pixel, which are used with the function mahalanobis. For each pixel, this function computes the Mahalanobis distances from the barycentre of the niche.

Actually, the function predict.enfa is identical to the function mahasuhab, except that the habitat suitability map is computed using the axes of the ENFA, instead of the raw data.

Note that the MADIFA allows a more consistent factorial decomposition of the Mahalanobis distances.

References

Clark, J.D., Dunn, J.E. and Smith, K.G. (1993) A multivariate model of female black bear habitat use for a geographic information system. Journal of Wildlife Management, 57, 519--526.

Hirzel, A.H., Hausser, J., Chessel, D. & Perrin, N. (2002) Ecological-niche factor analysis: How to compute habitat-suitability maps without absence data? Ecology, 83, 2027--2036.

See Also

mahalanobis for information on the computation of Mahalanobis distances. mahasuhab for more details on the computation of habitat suitability maps using the Mahalanobis distances. madifa for a more consistent factorial decomposition of the Mahalanobis distances

Examples

Run this code
# NOT RUN {
data(lynxjura)

map <- lynxjura$map

## We keep only "wild" indices.
tmp <- lynxjura$loc[,4] != "D"
locs <- lynxjura$locs[tmp, c("X","Y")]
dataenfa1 <- data2enfa(map, locs)

(enfa1 <- enfa(dudi.pca(dataenfa1$tab, scannf=FALSE),
               dataenfa1$pr, scannf = FALSE))

## Compute the prediction
pred <- predict(enfa1, dataenfa1$index, dataenfa1$attr)
image(pred)
contour(pred, col="green", add=T)
points(locs, col = "red", pch = 16)
## Lighter areas are the most preferred areas
# }

Run the code above in your browser using DataLab